diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5c1a452d..b647c2f2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,6 +25,8 @@ jobs: run: | python -m pip install --upgrade pip pip install -e ".[dev,serve,semantic]" + - name: Verify portable PortfolioTruth consumer contract + run: python scripts/generate_portfolio_truth_contract_fixture.py --check - name: Run tests run: python -m pytest tests/ -v --tb=short - name: Lint with ruff diff --git a/README.md b/README.md index 6ef375b4..30c0d6f7 100644 --- a/README.md +++ b/README.md @@ -113,6 +113,7 @@ Treat campaign/writeback, GitHub Projects, Notion sync, catalog overrides, score - Public-safe recording plan: [DEMO-PLAN.md](DEMO-PLAN.md) - Product brief: [docs/product/operator-os-product-brief.md](docs/product/operator-os-product-brief.md) - Public fixture proof package: [docs/demo-proof/public-fixture/README.md](docs/demo-proof/public-fixture/README.md) +- Portable PCC contract: [fixtures/contracts/portfolio-command-center-v1/manifest.json](fixtures/contracts/portfolio-command-center-v1/manifest.json) - proof-pr dogfood: [docs/proof-pr-dogfood.md](docs/proof-pr-dogfood.md) - Product modes: [docs/modes.md](docs/modes.md) - Web UI operator guide: [docs/audit-serve.md](docs/audit-serve.md) @@ -226,6 +227,19 @@ audit serve --output-dir output/demo To record the Portfolio Command Center wedge from the same fixture, follow [DEMO-PLAN.md](DEMO-PLAN.md) and point the desktop app at `output/demo/`. +The smaller PCC compatibility fixture is fixed-clock and deterministic. GHRA +owns its manifest, schema identity, generator, and digest; PCC pins the exact +producer commit separately so the artifact never needs a self-referential Git +hash. Because the synthetic fixture is not emitted by an attested producer +checkout, its canonical `producer` evidence is intentionally empty; partial or +invented producer evidence fails the same validation gate used for publication. +Regenerate or verify it with: + +```bash +python scripts/generate_portfolio_truth_contract_fixture.py +python scripts/generate_portfolio_truth_contract_fixture.py --check +``` + ### Quick start (subcommand form) ```bash diff --git a/fixtures/contracts/portfolio-command-center-v1/manifest.json b/fixtures/contracts/portfolio-command-center-v1/manifest.json new file mode 100644 index 00000000..56d6b7e9 --- /dev/null +++ b/fixtures/contracts/portfolio-command-center-v1/manifest.json @@ -0,0 +1,32 @@ +{ + "consumer": { + "compatibility_policy": "additive-0.x", + "repository": "saagpatel/PortfolioCommandCenter" + }, + "contract_version": "ghra-pcc-portfolio-truth.v1", + "fixture": { + "additive_canary_paths": [ + "contract_fixture", + "projects[0].additive_contract_canary" + ], + "coverage_states": [ + "complete", + "partial", + "stale", + "unknown" + ], + "evaluation_time": "2026-08-01T06:00:00+00:00", + "generated_at": "2026-08-01T00:00:00+00:00", + "producer_evidence": "absent", + "project_count": 4, + "security_evidence_semantics": "synthetic-cross-receipt-state-matrix" + }, + "portfolio_truth_schema_version": "0.11.0", + "producer": { + "artifact_path": "fixtures/contracts/portfolio-command-center-v1/portfolio-truth.json", + "artifact_sha256": "ba3000833f1cd9c89442948ebe51f7e405e7832333a69c6f7347fb2fbfae254a", + "generator": "src.portfolio_truth_contract_fixture:build_contract_fixture", + "manifest_path": "fixtures/contracts/portfolio-command-center-v1/manifest.json", + "repository": "saagpatel/GithubRepoAuditor" + } +} diff --git a/fixtures/contracts/portfolio-command-center-v1/portfolio-truth.json b/fixtures/contracts/portfolio-command-center-v1/portfolio-truth.json new file mode 100644 index 00000000..6cd0e2e7 --- /dev/null +++ b/fixtures/contracts/portfolio-command-center-v1/portfolio-truth.json @@ -0,0 +1,1652 @@ +{ + "contract_fixture": { + "contract_version": "ghra-pcc-portfolio-truth.v1", + "deterministic": true, + "producer_evidence": "absent", + "security_evidence_semantics": "synthetic-cross-receipt-state-matrix" + }, + "coverage": [ + { + "project_count": 4, + "source": "workspace", + "state": "observed" + }, + { + "observed_count": 4, + "project_count": 4, + "source": "git", + "state": "observed" + }, + { + "cohort_complete_count": 1, + "cohort_partial_count": 1, + "cohort_repository_count": 3, + "cohort_stale_count": 1, + "cohort_unknown_count": 0, + "complete_repo_count": 1, + "partial_repo_count": 1, + "project_count": 4, + "provider_observed_counts": { + "code_scanning": 1, + "dependabot": 2, + "secret_scanning": 1 + }, + "provider_zero_finding_counts": { + "code_scanning": 1, + "dependabot": 0, + "secret_scanning": 1 + }, + "remote_default_branch_counts": { + "credential_unavailable": 0, + "forbidden": 0, + "malformed": 0, + "not_found": 0, + "not_requested": 0, + "observed": 2, + "partial": 0, + "rate_limited": 0, + "stale": 1, + "transient_error": 0, + "unknown": 1 + }, + "scanned_count": 1, + "source": "github_security", + "stale_count": 1, + "state": "partial", + "unknown_count": 1 + }, + { + "observed_count": 0, + "source": "notion", + "state": "unknown" + } + ], + "derivation_policy_version": "portfolio_attention.v3", + "exclusions": { + "counts": {}, + "policy_version": "workspace_discovery.v2" + }, + "generated_at": "2026-08-01T00:00:00+00:00", + "inputs": { + "catalog": { + "observed_at": "2026-08-01T00:00:00+00:00", + "sha256": null, + "source_id": "portfolio-catalog" + }, + "github_security": { + "age_hours": 0.0, + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 3, + "content_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", + "path": "/demo-workspace/github-security-coverage.json", + "produced_at": "2026-08-01T00:00:00+00:00", + "producer_commit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "receipt_id": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "source_id": "github-security-coverage-receipt", + "state": "fresh" + }, + "notion": { + "carried_from_generated_at": null, + "mode": "unavailable", + "observed_at": null + }, + "workspace": { + "observed_at": "2026-08-01T00:00:00+00:00", + "source_id": "projects-root" + } + }, + "precedence_matrix": { + "declared.category": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "declared.criticality": [ + "catalog_repo", + "catalog_group" + ], + "declared.intended_disposition": [ + "catalog_repo", + "catalog_group" + ], + "declared.lifecycle_state": [ + "catalog_repo", + "catalog_group" + ], + "declared.maturity_program": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.notes": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "declared.operating_path": [ + "normalized" + ], + "declared.owner": [ + "catalog_repo", + "catalog_group" + ], + "declared.purpose": [ + "catalog_repo", + "catalog_group" + ], + "declared.review_cadence": [ + "catalog_repo", + "catalog_group" + ], + "declared.target_maturity": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.team": [ + "catalog_repo", + "catalog_group" + ], + "declared.tool_provenance": [ + "catalog_repo", + "catalog_group", + "inference", + "legacy_registry" + ], + "derived.activity_status": [ + "derived" + ], + "derived.archived": [ + "derived" + ], + "derived.attention_state": [ + "derived" + ], + "derived.context_files": [ + "workspace" + ], + "derived.context_quality": [ + "workspace", + "catalog_repo", + "catalog_group" + ], + "derived.current_state_present": [ + "workspace" + ], + "derived.has_ci": [ + "workspace" + ], + "derived.has_tests": [ + "workspace" + ], + "derived.known_risks_present": [ + "workspace" + ], + "derived.last_meaningful_activity_at": [ + "git", + "workspace" + ], + "derived.next_recommended_move_present": [ + "workspace" + ], + "derived.path_confidence": [ + "normalized" + ], + "derived.path_override": [ + "normalized" + ], + "derived.path_rationale": [ + "normalized" + ], + "derived.primary_context_file": [ + "workspace" + ], + "derived.project_summary_present": [ + "workspace" + ], + "derived.readme_char_count": [ + "workspace" + ], + "derived.run_instructions_present": [ + "workspace" + ], + "derived.stack": [ + "workspace", + "legacy_registry" + ], + "derived.stack_present": [ + "workspace" + ] + }, + "producer": {}, + "projects": [ + { + "additive_contract_canary": { + "consumer_behavior": "ignore-compatible-addition" + }, + "advisory": { + "legacy_category": "lab", + "legacy_context_quality": "minimum-viable", + "legacy_status": "dormant", + "legacy_tool_provenance": "", + "notion_current_state": "", + "notion_momentum": "", + "notion_portfolio_call": "" + }, + "declared": { + "automation_eligible": true, + "category": "learning", + "criticality": "medium", + "doctor_standard": "", + "intended_disposition": "", + "lifecycle_state": "dormant", + "maturity_program": "maintain", + "notes": "", + "operating_path": "maintain", + "owner": "demo-operator", + "purpose": "Exploratory prototype kept for reference only.", + "review_cadence": "monthly", + "target_maturity": "operating", + "team": "", + "tool_provenance": "claude-code" + }, + "derived": { + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "context_file_count": 1, + "context_files": [ + "AGENTS.md" + ], + "context_quality": "minimum-viable", + "current_state_present": true, + "has_ci": true, + "has_license": true, + "has_tests": true, + "known_risks_present": true, + "last_meaningful_activity_at": "2026-01-23T00:00:00+00:00", + "next_recommended_move_present": true, + "path_confidence": "medium", + "path_override": "", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "readme_char_count": 1174, + "release_count": 0, + "run_instructions_present": true, + "stack": [ + "Python" + ], + "stack_present": true + }, + "identity": { + "default_branch": "main", + "display_name": "Quartz Signal", + "group_key": "lab", + "group_label": "Experiments Lab", + "has_git": true, + "path": "lab/quartz-signal", + "project_key": "lab/quartz-signal", + "repo_full_name": "demo-org/quartz-signal", + "section_label": "Experiments Lab", + "section_marker": "lab/", + "top_level_dir": "lab" + }, + "provenance": { + "declared.category": { + "detail": "learning", + "source": "demo-fixture" + }, + "declared.criticality": { + "detail": "medium", + "source": "demo-fixture" + }, + "declared.doctor_standard": { + "detail": "", + "source": "demo-fixture" + }, + "declared.intended_disposition": { + "detail": "", + "source": "demo-fixture" + }, + "declared.lifecycle_state": { + "detail": "dormant", + "source": "demo-fixture" + }, + "declared.maturity_program": { + "detail": "maintain", + "source": "demo-fixture" + }, + "declared.notes": { + "detail": "", + "source": "demo-fixture" + }, + "declared.operating_path": { + "detail": "explicit-operating-path", + "source": "normalized" + }, + "declared.owner": { + "detail": "demo-operator", + "source": "demo-fixture" + }, + "declared.purpose": { + "detail": "Exploratory prototype kept for reference only.", + "source": "demo-fixture" + }, + "declared.review_cadence": { + "detail": "monthly", + "source": "demo-fixture" + }, + "declared.target_maturity": { + "detail": "operating", + "source": "demo-fixture" + }, + "declared.team": { + "detail": "", + "source": "demo-fixture" + }, + "declared.tool_provenance": { + "detail": "claude-code", + "source": "demo-fixture" + }, + "derived.activity_status": { + "detail": "stale", + "source": "demo-fixture" + }, + "derived.archived": { + "detail": "false", + "source": "demo-fixture" + }, + "derived.attention_state": { + "detail": "parked", + "source": "demo-fixture" + }, + "derived.context_files": { + "detail": "1", + "source": "demo-fixture" + }, + "derived.context_quality": { + "detail": "minimum-viable", + "source": "demo-fixture" + }, + "derived.current_state_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.known_risks_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.last_meaningful_activity_at": { + "detail": "2026-01-23T00:00:00+00:00", + "source": "demo-fixture" + }, + "derived.next_recommended_move_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.path_confidence": { + "detail": "medium", + "source": "normalized" + }, + "derived.path_override": { + "detail": "", + "source": "normalized" + }, + "derived.path_rationale": { + "detail": "Stable path is Maintain from explicit operating path.", + "source": "normalized" + }, + "derived.primary_context_file": { + "detail": "AGENTS.md", + "source": "demo-fixture" + }, + "derived.project_summary_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.run_instructions_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.stack": { + "detail": "Python", + "source": "demo-fixture" + }, + "derived.stack_present": { + "detail": "true", + "source": "demo-fixture" + }, + "risk.doctor_gap": { + "detail": "false", + "source": "derived" + }, + "risk.risk_tier": { + "detail": "baseline", + "source": "derived" + } + }, + "repository_state": { + "local": { + "ahead": 0, + "behind": 0, + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "path": "/demo-workspace/lab/quartz-signal", + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_observation_source": "local_tracking_ref", + "upstream_remote": "origin" + }, + "observed_at": "2026-08-01T00:00:00+00:00", + "remote_default_branch": { + "archived": null, + "default_branch": null, + "head_sha": null, + "observed_at": "2026-07-30T23:00:00+00:00", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "source": "github-graphql-default-branch-head-v1", + "state": "stale" + }, + "state": "observed", + "topology": { + "configured_path": "/demo-workspace/lab/quartz-signal", + "kind": "working_repository", + "linked_worktree_count": 0, + "selection": { + "candidate_count": 0, + "reason": "independent remote-default evidence is not observed (state=stale)", + "reason_code": "remote_default_branch_unavailable", + "source": "github-graphql-default-branch-head-v1", + "state": "unknown" + }, + "worktree_count": 1 + }, + "worktrees": [ + { + "ahead": 0, + "bare": false, + "behind": 0, + "branch": "main", + "detached": false, + "dirty": false, + "dirty_path_count": 0, + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "path": "/demo-workspace/lab/quartz-signal", + "state": "observed", + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_observation_source": "local_tracking_ref", + "upstream_remote": "origin" + } + ] + }, + "risk": { + "context_risk": false, + "doctor_gap": false, + "path_risk": false, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", + "risk_tier": "baseline", + "security_risk": false + }, + "security": { + "alerts_available": false, + "code_scanning_critical": null, + "code_scanning_high": null, + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "coverage_state": "stale", + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_low": null, + "dependabot_medium": null, + "open_high_critical": 0, + "providers": { + "code_scanning": { + "completed": false, + "conditional": { + "requested": true, + "result": "modified" + }, + "counts": null, + "etag": null, + "http_classification": "success", + "http_status": 200, + "last_modified": null, + "observed_at": "2026-07-30T23:00:00+00:00", + "pagination_complete": true, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "state": "stale", + "zero_findings": null + }, + "dependabot": { + "completed": false, + "conditional": { + "requested": true, + "result": "modified" + }, + "counts": null, + "etag": null, + "http_classification": "success", + "http_status": 200, + "last_modified": null, + "observed_at": "2026-07-30T23:00:00+00:00", + "pagination_complete": true, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "state": "stale", + "zero_findings": null + }, + "secret_scanning": { + "completed": false, + "conditional": { + "requested": true, + "result": "modified" + }, + "counts": null, + "etag": null, + "http_classification": "success", + "http_status": 200, + "last_modified": null, + "observed_at": "2026-07-30T23:00:00+00:00", + "pagination_complete": true, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "state": "stale", + "zero_findings": null + } + }, + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "stale", + "secret_scanning_open": null, + "source_produced_at": "2026-07-30T23:00:00+00:00" + }, + "warnings": [] + }, + { + "advisory": { + "legacy_category": "lab", + "legacy_context_quality": "boilerplate", + "legacy_status": "manual-only", + "legacy_tool_provenance": "", + "notion_current_state": "", + "notion_momentum": "", + "notion_portfolio_call": "" + }, + "declared": { + "automation_eligible": true, + "category": "learning", + "criticality": "medium", + "doctor_standard": "", + "intended_disposition": "", + "lifecycle_state": "manual-only", + "maturity_program": "maintain", + "notes": "", + "operating_path": "maintain", + "owner": "demo-operator", + "purpose": "Exploratory prototype kept for reference only.", + "review_cadence": "monthly", + "target_maturity": "operating", + "team": "", + "tool_provenance": "codex" + }, + "derived": { + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "context_file_count": 1, + "context_files": [ + "AGENTS.md" + ], + "context_quality": "boilerplate", + "current_state_present": false, + "has_ci": true, + "has_license": true, + "has_tests": false, + "known_risks_present": false, + "last_meaningful_activity_at": "2026-07-11T00:00:00+00:00", + "next_recommended_move_present": false, + "path_confidence": "low", + "path_override": "investigate", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "readme_char_count": 1311, + "release_count": 0, + "run_instructions_present": false, + "stack": [ + "C" + ], + "stack_present": false + }, + "identity": { + "default_branch": "main", + "display_name": "Solstice Cairn", + "group_key": "lab", + "group_label": "Experiments Lab", + "has_git": true, + "path": "lab/solstice-cairn", + "project_key": "lab/solstice-cairn", + "repo_full_name": "demo-org/solstice-cairn", + "section_label": "Experiments Lab", + "section_marker": "lab/", + "top_level_dir": "lab" + }, + "provenance": { + "declared.category": { + "detail": "learning", + "source": "demo-fixture" + }, + "declared.criticality": { + "detail": "medium", + "source": "demo-fixture" + }, + "declared.doctor_standard": { + "detail": "", + "source": "demo-fixture" + }, + "declared.intended_disposition": { + "detail": "", + "source": "demo-fixture" + }, + "declared.lifecycle_state": { + "detail": "manual-only", + "source": "demo-fixture" + }, + "declared.maturity_program": { + "detail": "maintain", + "source": "demo-fixture" + }, + "declared.notes": { + "detail": "", + "source": "demo-fixture" + }, + "declared.operating_path": { + "detail": "explicit-operating-path", + "source": "normalized" + }, + "declared.owner": { + "detail": "demo-operator", + "source": "demo-fixture" + }, + "declared.purpose": { + "detail": "Exploratory prototype kept for reference only.", + "source": "demo-fixture" + }, + "declared.review_cadence": { + "detail": "monthly", + "source": "demo-fixture" + }, + "declared.target_maturity": { + "detail": "operating", + "source": "demo-fixture" + }, + "declared.team": { + "detail": "", + "source": "demo-fixture" + }, + "declared.tool_provenance": { + "detail": "codex", + "source": "demo-fixture" + }, + "derived.activity_status": { + "detail": "recent", + "source": "demo-fixture" + }, + "derived.archived": { + "detail": "false", + "source": "demo-fixture" + }, + "derived.attention_state": { + "detail": "manual-only", + "source": "demo-fixture" + }, + "derived.context_files": { + "detail": "1", + "source": "demo-fixture" + }, + "derived.context_quality": { + "detail": "boilerplate", + "source": "demo-fixture" + }, + "derived.current_state_present": { + "detail": "false", + "source": "demo-fixture" + }, + "derived.known_risks_present": { + "detail": "false", + "source": "demo-fixture" + }, + "derived.last_meaningful_activity_at": { + "detail": "2026-07-11T00:00:00+00:00", + "source": "demo-fixture" + }, + "derived.next_recommended_move_present": { + "detail": "false", + "source": "demo-fixture" + }, + "derived.path_confidence": { + "detail": "low", + "source": "normalized" + }, + "derived.path_override": { + "detail": "investigate", + "source": "normalized" + }, + "derived.path_rationale": { + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "source": "normalized" + }, + "derived.primary_context_file": { + "detail": "AGENTS.md", + "source": "demo-fixture" + }, + "derived.project_summary_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.run_instructions_present": { + "detail": "false", + "source": "demo-fixture" + }, + "derived.stack": { + "detail": "C", + "source": "demo-fixture" + }, + "derived.stack_present": { + "detail": "false", + "source": "demo-fixture" + }, + "risk.doctor_gap": { + "detail": "false", + "source": "derived" + }, + "risk.risk_tier": { + "detail": "elevated", + "source": "derived" + } + }, + "repository_state": { + "local": { + "ahead": 0, + "behind": 0, + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "path": "/demo-workspace/lab/solstice-cairn", + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_observation_source": "local_tracking_ref", + "upstream_remote": "origin" + }, + "observed_at": "2026-08-01T00:00:00+00:00", + "remote_default_branch": { + "reason": "no independent live remote read was performed by portfolio generation", + "reason_code": "not_requested", + "state": "unknown" + }, + "state": "observed", + "topology": { + "configured_path": "/demo-workspace/lab/solstice-cairn", + "kind": "working_repository", + "linked_worktree_count": 0, + "selection": { + "candidate_count": 0, + "reason": "independent remote-default evidence is not observed (state=unknown)", + "reason_code": "remote_default_branch_unavailable", + "source": "remote_default_branch", + "state": "unknown" + }, + "worktree_count": 1 + }, + "worktrees": [ + { + "ahead": 0, + "bare": false, + "behind": 0, + "branch": "main", + "detached": false, + "dirty": false, + "dirty_path_count": 0, + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "path": "/demo-workspace/lab/solstice-cairn", + "state": "observed", + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_observation_source": "local_tracking_ref", + "upstream_remote": "origin" + } + ] + }, + "risk": { + "context_risk": true, + "doctor_gap": false, + "path_risk": true, + "risk_factors": [ + "weak-context-active", + "investigate-override", + "no-run-instructions" + ], + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "risk_tier": "elevated", + "security_risk": false + }, + "security": { + "alerts_available": false, + "code_scanning_critical": null, + "code_scanning_high": null, + "cohort_member": false, + "cohort_policy": "", + "coverage_state": "unknown", + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_low": null, + "dependabot_medium": null, + "open_high_critical": 0, + "providers": {}, + "receipt_schema_version": "", + "receipt_state": "unknown", + "secret_scanning_open": null, + "source_produced_at": "" + }, + "warnings": [] + }, + { + "advisory": { + "legacy_category": "platform", + "legacy_context_quality": "full", + "legacy_status": "active", + "legacy_tool_provenance": "", + "notion_current_state": "", + "notion_momentum": "", + "notion_portfolio_call": "" + }, + "declared": { + "automation_eligible": false, + "category": "infrastructure", + "criticality": "medium", + "doctor_standard": "", + "intended_disposition": "", + "lifecycle_state": "active", + "maturity_program": "maintain", + "notes": "", + "operating_path": "maintain", + "owner": "demo-operator", + "purpose": "Shared platform service other demo projects depend on.", + "review_cadence": "monthly", + "target_maturity": "operating", + "team": "", + "tool_provenance": "claude-code" + }, + "derived": { + "activity_status": "active", + "archived": false, + "attention_state": "active-infra", + "context_file_count": 3, + "context_files": [ + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" + ], + "context_quality": "full", + "current_state_present": true, + "has_ci": true, + "has_license": true, + "has_tests": true, + "known_risks_present": true, + "last_meaningful_activity_at": "2026-07-30T00:00:00+00:00", + "next_recommended_move_present": true, + "path_confidence": "high", + "path_override": "", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "readme_char_count": 900, + "release_count": 0, + "run_instructions_present": true, + "stack": [ + "Go" + ], + "stack_present": true + }, + "identity": { + "default_branch": "main", + "display_name": "Dovetail Forge", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "has_git": true, + "path": "platform/dovetail-forge", + "project_key": "platform/dovetail-forge", + "repo_full_name": "demo-org/dovetail-forge", + "section_label": "Platform and Infrastructure", + "section_marker": "platform/", + "top_level_dir": "platform" + }, + "provenance": { + "declared.category": { + "detail": "infrastructure", + "source": "demo-fixture" + }, + "declared.criticality": { + "detail": "medium", + "source": "demo-fixture" + }, + "declared.doctor_standard": { + "detail": "", + "source": "demo-fixture" + }, + "declared.intended_disposition": { + "detail": "", + "source": "demo-fixture" + }, + "declared.lifecycle_state": { + "detail": "active", + "source": "demo-fixture" + }, + "declared.maturity_program": { + "detail": "maintain", + "source": "demo-fixture" + }, + "declared.notes": { + "detail": "", + "source": "demo-fixture" + }, + "declared.operating_path": { + "detail": "explicit-operating-path", + "source": "normalized" + }, + "declared.owner": { + "detail": "demo-operator", + "source": "demo-fixture" + }, + "declared.purpose": { + "detail": "Shared platform service other demo projects depend on.", + "source": "demo-fixture" + }, + "declared.review_cadence": { + "detail": "monthly", + "source": "demo-fixture" + }, + "declared.target_maturity": { + "detail": "operating", + "source": "demo-fixture" + }, + "declared.team": { + "detail": "", + "source": "demo-fixture" + }, + "declared.tool_provenance": { + "detail": "claude-code", + "source": "demo-fixture" + }, + "derived.activity_status": { + "detail": "active", + "source": "demo-fixture" + }, + "derived.archived": { + "detail": "false", + "source": "demo-fixture" + }, + "derived.attention_state": { + "detail": "active-infra", + "source": "demo-fixture" + }, + "derived.context_files": { + "detail": "3", + "source": "demo-fixture" + }, + "derived.context_quality": { + "detail": "full", + "source": "demo-fixture" + }, + "derived.current_state_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.known_risks_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.last_meaningful_activity_at": { + "detail": "2026-07-30T00:00:00+00:00", + "source": "demo-fixture" + }, + "derived.next_recommended_move_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.path_confidence": { + "detail": "high", + "source": "normalized" + }, + "derived.path_override": { + "detail": "", + "source": "normalized" + }, + "derived.path_rationale": { + "detail": "Stable path is Maintain from explicit operating path.", + "source": "normalized" + }, + "derived.primary_context_file": { + "detail": "AGENTS.md", + "source": "demo-fixture" + }, + "derived.project_summary_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.run_instructions_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.stack": { + "detail": "Go", + "source": "demo-fixture" + }, + "derived.stack_present": { + "detail": "true", + "source": "demo-fixture" + }, + "risk.doctor_gap": { + "detail": "false", + "source": "derived" + }, + "risk.risk_tier": { + "detail": "baseline", + "source": "derived" + } + }, + "repository_state": { + "local": { + "ahead": 0, + "behind": 0, + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "path": "/demo-workspace/platform/dovetail-forge", + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_observation_source": "local_tracking_ref", + "upstream_remote": "origin" + }, + "observed_at": "2026-08-01T00:00:00+00:00", + "remote_default_branch": { + "archived": false, + "default_branch": "main", + "head_sha": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "observed_at": "2026-08-01T00:00:00+00:00", + "reason": null, + "reason_code": "observed", + "source": "github-graphql-default-branch-head-v1", + "state": "observed" + }, + "state": "observed", + "topology": { + "configured_path": "/demo-workspace/platform/dovetail-forge", + "kind": "working_repository", + "linked_worktree_count": 0, + "selection": { + "branch": "main", + "candidate_count": 1, + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "path": "/demo-workspace/platform/dovetail-forge", + "reason": null, + "reason_code": "unique_remote_head_match", + "source": "github-graphql-default-branch-head-v1", + "state": "selected" + }, + "worktree_count": 1 + }, + "worktrees": [ + { + "ahead": 0, + "bare": false, + "behind": 0, + "branch": "main", + "detached": false, + "dirty": false, + "dirty_path_count": 0, + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "path": "/demo-workspace/platform/dovetail-forge", + "state": "observed", + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_observation_source": "local_tracking_ref", + "upstream_remote": "origin" + } + ] + }, + "risk": { + "context_risk": false, + "doctor_gap": false, + "path_risk": false, + "risk_factors": [], + "risk_summary": "No elevated risk factors.", + "risk_tier": "baseline", + "security_risk": false + }, + "security": { + "alerts_available": true, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "coverage_state": "complete", + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_low": 4, + "dependabot_medium": 2, + "open_high_critical": 0, + "providers": { + "code_scanning": { + "completed": true, + "conditional": { + "requested": true, + "result": "modified" + }, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "etag": null, + "http_classification": "success", + "http_status": 200, + "last_modified": null, + "observed_at": "2026-08-01T00:00:00+00:00", + "pagination_complete": true, + "reason": null, + "reason_code": "observed", + "state": "observed", + "zero_findings": true + }, + "dependabot": { + "completed": true, + "conditional": { + "requested": true, + "result": "modified" + }, + "counts": { + "critical": 0, + "high": 0, + "low": 4, + "medium": 2 + }, + "etag": null, + "http_classification": "success", + "http_status": 200, + "last_modified": null, + "observed_at": "2026-08-01T00:00:00+00:00", + "pagination_complete": true, + "reason": null, + "reason_code": "observed", + "state": "observed", + "zero_findings": false + }, + "secret_scanning": { + "completed": true, + "conditional": { + "requested": true, + "result": "modified" + }, + "counts": { + "open": 0 + }, + "etag": null, + "http_classification": "success", + "http_status": 200, + "last_modified": null, + "observed_at": "2026-08-01T00:00:00+00:00", + "pagination_complete": true, + "reason": null, + "reason_code": "observed", + "state": "observed", + "zero_findings": true + } + }, + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "secret_scanning_open": 0, + "source_produced_at": "2026-08-01T00:00:00+00:00" + }, + "warnings": [] + }, + { + "advisory": { + "legacy_category": "studio", + "legacy_context_quality": "standard", + "legacy_status": "active", + "legacy_tool_provenance": "", + "notion_current_state": "", + "notion_momentum": "", + "notion_portfolio_call": "" + }, + "declared": { + "automation_eligible": false, + "category": "fun", + "criticality": "medium", + "doctor_standard": "", + "intended_disposition": "", + "lifecycle_state": "active", + "maturity_program": "maintain", + "notes": "", + "operating_path": "finish", + "owner": "demo-operator", + "purpose": "Product experiment maintained on a manual cadence.", + "review_cadence": "monthly", + "target_maturity": "operating", + "team": "", + "tool_provenance": "codex" + }, + "derived": { + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "context_file_count": 2, + "context_files": [ + "AGENTS.md", + "docs/current-state.md" + ], + "context_quality": "standard", + "current_state_present": true, + "has_ci": true, + "has_license": true, + "has_tests": true, + "known_risks_present": true, + "last_meaningful_activity_at": "2026-07-11T00:00:00+00:00", + "next_recommended_move_present": true, + "path_confidence": "high", + "path_override": "", + "path_rationale": "Stable path is Finish from explicit operating path.", + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "readme_char_count": 1037, + "release_count": 0, + "run_instructions_present": true, + "stack": [ + "Ruby" + ], + "stack_present": true + }, + "identity": { + "default_branch": "main", + "display_name": "Kestrel Loom", + "group_key": "studio", + "group_label": "Studio Projects", + "has_git": true, + "path": "studio/kestrel-loom", + "project_key": "studio/kestrel-loom", + "repo_full_name": "demo-org/kestrel-loom", + "section_label": "Studio Projects", + "section_marker": "studio/", + "top_level_dir": "studio" + }, + "provenance": { + "declared.category": { + "detail": "fun", + "source": "demo-fixture" + }, + "declared.criticality": { + "detail": "medium", + "source": "demo-fixture" + }, + "declared.doctor_standard": { + "detail": "", + "source": "demo-fixture" + }, + "declared.intended_disposition": { + "detail": "", + "source": "demo-fixture" + }, + "declared.lifecycle_state": { + "detail": "active", + "source": "demo-fixture" + }, + "declared.maturity_program": { + "detail": "maintain", + "source": "demo-fixture" + }, + "declared.notes": { + "detail": "", + "source": "demo-fixture" + }, + "declared.operating_path": { + "detail": "explicit-operating-path", + "source": "normalized" + }, + "declared.owner": { + "detail": "demo-operator", + "source": "demo-fixture" + }, + "declared.purpose": { + "detail": "Product experiment maintained on a manual cadence.", + "source": "demo-fixture" + }, + "declared.review_cadence": { + "detail": "monthly", + "source": "demo-fixture" + }, + "declared.target_maturity": { + "detail": "operating", + "source": "demo-fixture" + }, + "declared.team": { + "detail": "", + "source": "demo-fixture" + }, + "declared.tool_provenance": { + "detail": "codex", + "source": "demo-fixture" + }, + "derived.activity_status": { + "detail": "recent", + "source": "demo-fixture" + }, + "derived.archived": { + "detail": "false", + "source": "demo-fixture" + }, + "derived.attention_state": { + "detail": "decision-needed", + "source": "demo-fixture" + }, + "derived.context_files": { + "detail": "2", + "source": "demo-fixture" + }, + "derived.context_quality": { + "detail": "standard", + "source": "demo-fixture" + }, + "derived.current_state_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.known_risks_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.last_meaningful_activity_at": { + "detail": "2026-07-11T00:00:00+00:00", + "source": "demo-fixture" + }, + "derived.next_recommended_move_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.path_confidence": { + "detail": "high", + "source": "normalized" + }, + "derived.path_override": { + "detail": "", + "source": "normalized" + }, + "derived.path_rationale": { + "detail": "Stable path is Finish from explicit operating path.", + "source": "normalized" + }, + "derived.primary_context_file": { + "detail": "AGENTS.md", + "source": "demo-fixture" + }, + "derived.project_summary_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.run_instructions_present": { + "detail": "true", + "source": "demo-fixture" + }, + "derived.stack": { + "detail": "Ruby", + "source": "demo-fixture" + }, + "derived.stack_present": { + "detail": "true", + "source": "demo-fixture" + }, + "risk.doctor_gap": { + "detail": "false", + "source": "derived" + }, + "risk.risk_tier": { + "detail": "moderate", + "source": "derived" + } + }, + "repository_state": { + "local": { + "ahead": 0, + "behind": 0, + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "path": "/demo-workspace/studio/kestrel-loom", + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_observation_source": "local_tracking_ref", + "upstream_remote": "origin" + }, + "observed_at": "2026-08-01T00:00:00+00:00", + "remote_default_branch": { + "archived": false, + "default_branch": "main", + "head_sha": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "observed_at": "2026-08-01T00:00:00+00:00", + "reason": null, + "reason_code": "observed", + "source": "github-graphql-default-branch-head-v1", + "state": "observed" + }, + "state": "observed", + "topology": { + "configured_path": "/demo-workspace/studio/kestrel-loom", + "kind": "working_repository", + "linked_worktree_count": 0, + "selection": { + "branch": "main", + "candidate_count": 1, + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "path": "/demo-workspace/studio/kestrel-loom", + "reason": null, + "reason_code": "unique_remote_head_match", + "source": "github-graphql-default-branch-head-v1", + "state": "selected" + }, + "worktree_count": 1 + }, + "worktrees": [ + { + "ahead": 0, + "bare": false, + "behind": 0, + "branch": "main", + "detached": false, + "dirty": false, + "dirty_path_count": 0, + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "path": "/demo-workspace/studio/kestrel-loom", + "state": "observed", + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_observation_source": "local_tracking_ref", + "upstream_remote": "origin" + } + ] + }, + "risk": { + "context_risk": false, + "doctor_gap": false, + "path_risk": false, + "risk_factors": [ + "active-high-severity-alerts" + ], + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "risk_tier": "moderate", + "security_risk": true + }, + "security": { + "alerts_available": false, + "code_scanning_critical": null, + "code_scanning_high": null, + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "coverage_state": "partial", + "dependabot_critical": 0, + "dependabot_high": 3, + "dependabot_low": 0, + "dependabot_medium": 1, + "open_high_critical": 3, + "providers": { + "code_scanning": { + "completed": false, + "conditional": { + "requested": false, + "result": "failed" + }, + "counts": null, + "etag": null, + "http_classification": "github_not_found", + "http_status": 404, + "last_modified": null, + "observed_at": "2026-08-01T00:00:00+00:00", + "pagination_complete": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "state": "not_found", + "zero_findings": null + }, + "dependabot": { + "completed": true, + "conditional": { + "requested": true, + "result": "modified" + }, + "counts": { + "critical": 0, + "high": 3, + "low": 0, + "medium": 1 + }, + "etag": null, + "http_classification": "success", + "http_status": 200, + "last_modified": null, + "observed_at": "2026-08-01T00:00:00+00:00", + "pagination_complete": true, + "reason": null, + "reason_code": "observed", + "state": "observed", + "zero_findings": false + }, + "secret_scanning": { + "completed": false, + "conditional": { + "requested": false, + "result": "failed" + }, + "counts": null, + "etag": null, + "http_classification": "github_not_found", + "http_status": 404, + "last_modified": null, + "observed_at": "2026-08-01T00:00:00+00:00", + "pagination_complete": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "state": "not_found", + "zero_findings": null + } + }, + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "secret_scanning_open": null, + "source_produced_at": "2026-08-01T00:00:00+00:00" + }, + "warnings": [] + } + ], + "rollups": { + "decision": { + "decision_needed_count": 1, + "default_attention_count": 2 + }, + "risk_tier_counts": { + "baseline": 2, + "deferred": 0, + "elevated": 1, + "moderate": 1 + }, + "security": { + "code_scanning_observed_count": 1, + "code_scanning_zero_finding_count": 1, + "cohort_complete_count": 1, + "cohort_partial_count": 1, + "cohort_repository_count": 3, + "cohort_stale_count": 1, + "cohort_unknown_count": 0, + "complete_repo_count": 1, + "coverage_state": "partial", + "dependabot_observed_count": 2, + "dependabot_zero_finding_count": 0, + "partial_repo_count": 1, + "remote_default_branch_observed_count": 2, + "remote_default_branch_partial_count": 0, + "remote_default_branch_stale_count": 1, + "remote_default_branch_unavailable_count": 1, + "repos_with_open_high_critical": 1, + "scanned_count": 1, + "secret_scanning_observed_count": 1, + "secret_scanning_zero_finding_count": 1, + "stale_count": 1, + "total_open_critical": 0, + "total_open_high": 3, + "unavailable_count": 3, + "unknown_count": 1 + } + }, + "schema_version": "0.11.0", + "source_summary": { + "activity_status_counts": { + "active": 1, + "recent": 2, + "stale": 1 + }, + "archived_count": 0, + "attention_state_counts": { + "active-infra": 1, + "decision-needed": 1, + "manual-only": 1, + "parked": 1 + }, + "catalog_errors": [], + "catalog_warnings": [], + "context_quality_counts": { + "boilerplate": 1, + "full": 1, + "minimum-viable": 1, + "standard": 1 + }, + "duplicate_display_names": [], + "github_archived_count": 0, + "legacy_registry_rows": 4, + "notion_context_carried_forward": false, + "notion_context_rows": 0, + "project_count": 4, + "unresolved_duplicate_display_names": [], + "workspace_root": "/demo-workspace" + }, + "warnings": [], + "workspace_root": "/demo-workspace" +} diff --git a/output/demo/portfolio-truth-history-01.json b/output/demo/portfolio-truth-history-01.json index 94e984a2..ed19d76e 100644 --- a/output/demo/portfolio-truth-history-01.json +++ b/output/demo/portfolio-truth-history-01.json @@ -1,15 +1,98 @@ { "schema_version": "0.11.0", + "generated_at": "2026-06-08T22:09:43.833784+00:00", "derivation_policy_version": "portfolio_attention.v3", - "generated_at": "2026-06-06T22:50:13.825998+00:00", - "workspace_root": "/demo-workspace", - "producer": { - "repository": "demo-org/portfolio-auditor", - "checkout_role": "demo-fixture", - "worktree_clean": true, - "dirty_path_count": 0, - "verified_at": "2026-06-06T22:50:13.825998+00:00" + "producer": {}, + "inputs": { + "catalog": { + "source_id": "portfolio-catalog", + "sha256": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00" + }, + "workspace": { + "source_id": "projects-root", + "observed_at": "2026-06-08T22:09:43.833784+00:00" + }, + "notion": { + "mode": "unavailable", + "observed_at": null, + "carried_from_generated_at": null + }, + "github_security": { + "source_id": "github-security-coverage-receipt", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "produced_at": "2026-06-08T22:09:43.833784+00:00", + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 18, + "path": "/demo-workspace/github-security-coverage.json", + "receipt_id": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", + "content_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" + } + }, + "coverage": [ + { + "source": "workspace", + "state": "observed", + "project_count": 40 + }, + { + "source": "git", + "state": "observed", + "observed_count": 40, + "project_count": 40 + }, + { + "source": "github_security", + "state": "partial", + "scanned_count": 10, + "complete_repo_count": 10, + "partial_repo_count": 6, + "stale_count": 2, + "unknown_count": 22, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "provider_observed_counts": { + "dependabot": 16, + "code_scanning": 10, + "secret_scanning": 10 + }, + "provider_zero_finding_counts": { + "dependabot": 0, + "code_scanning": 6, + "secret_scanning": 9 + }, + "remote_default_branch_counts": { + "observed": 16, + "partial": 0, + "stale": 2, + "credential_unavailable": 0, + "forbidden": 0, + "not_found": 0, + "rate_limited": 0, + "transient_error": 0, + "malformed": 0, + "not_requested": 0, + "unknown": 22 + }, + "project_count": 40 + }, + { + "source": "notion", + "state": "unknown", + "observed_count": 0 + } + ], + "exclusions": { + "policy_version": "workspace_discovery.v2", + "counts": {} }, + "workspace_root": "/demo-workspace", "source_summary": { "workspace_root": "/demo-workspace", "project_count": 40, @@ -17,1318 +100,2509 @@ "catalog_warnings": [], "legacy_registry_rows": 40, "notion_context_rows": 0, - "notion_context_carried_forward": 0, + "notion_context_carried_forward": false, "context_quality_counts": { + "none": 8, "full": 8, "standard": 8, "minimum-viable": 8, - "boilerplate": 8, - "none": 8 + "boilerplate": 8 }, "activity_status_counts": { + "stale": 19, "active": 9, - "recent": 12, - "stale": 19 + "recent": 12 }, + "archived_count": 8, "attention_state_counts": { - "active-product": 3, - "decision-needed": 3, - "active-infra": 4, - "manual-only": 7, + "archived": 8, + "decision-needed": 13, "experiment": 8, - "parked": 7, - "archived": 8 + "parked": 6, + "manual-only": 5 }, - "archived_count": 8, "github_archived_count": 0, "duplicate_display_names": [], "unresolved_duplicate_display_names": [] }, "precedence_matrix": { - "identity": [ - "demo fixture" + "declared.owner": [ + "catalog_repo", + "catalog_group" + ], + "declared.team": [ + "catalog_repo", + "catalog_group" + ], + "declared.purpose": [ + "catalog_repo", + "catalog_group" + ], + "declared.lifecycle_state": [ + "catalog_repo", + "catalog_group" + ], + "declared.criticality": [ + "catalog_repo", + "catalog_group" + ], + "declared.review_cadence": [ + "catalog_repo", + "catalog_group" + ], + "declared.intended_disposition": [ + "catalog_repo", + "catalog_group" + ], + "declared.maturity_program": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.target_maturity": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.operating_path": [ + "normalized" + ], + "declared.category": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "declared.tool_provenance": [ + "catalog_repo", + "catalog_group", + "inference", + "legacy_registry" + ], + "declared.notes": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "derived.stack": [ + "workspace", + "legacy_registry" + ], + "derived.context_quality": [ + "workspace", + "catalog_repo", + "catalog_group" + ], + "derived.context_files": [ + "workspace" ], - "declared": [ - "demo fixture" + "derived.primary_context_file": [ + "workspace" ], - "derived": [ - "demo fixture" + "derived.project_summary_present": [ + "workspace" ], - "risk": [ - "demo fixture" + "derived.current_state_present": [ + "workspace" ], - "security": [ - "demo fixture receipt" + "derived.stack_present": [ + "workspace" + ], + "derived.run_instructions_present": [ + "workspace" + ], + "derived.known_risks_present": [ + "workspace" + ], + "derived.next_recommended_move_present": [ + "workspace" + ], + "derived.last_meaningful_activity_at": [ + "git", + "workspace" + ], + "derived.activity_status": [ + "derived" + ], + "derived.archived": [ + "derived" + ], + "derived.attention_state": [ + "derived" + ], + "derived.path_override": [ + "normalized" + ], + "derived.path_confidence": [ + "normalized" + ], + "derived.path_rationale": [ + "normalized" + ], + "derived.has_tests": [ + "workspace" + ], + "derived.has_ci": [ + "workspace" + ], + "derived.readme_char_count": [ + "workspace" ] }, - "coverage": [ - { - "source": "workspace", - "state": "observed", - "project_count": 40 - }, - { - "source": "github_security", - "state": "partial", - "project_count": 40, - "complete_repo_count": 10, - "partial_repo_count": 6, - "stale_count": 2, - "unknown_count": 22 - } - ], - "exclusions": [], - "inputs": [], "warnings": [], "projects": [ { "identity": { - "project_key": "flagship/aurora-ledger", - "repo_full_name": "demo-org/aurora-ledger", - "display_name": "Aurora Ledger", - "path": "flagship/aurora-ledger", - "section_marker": "flagship/", + "project_key": "archive/gossamer-ridge", + "display_name": "Gossamer Ridge", + "path": "archive/gossamer-ridge", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/gossamer-ridge", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "TypeScript", - "Next.js" + "Python" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-04T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 900, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5284, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "15 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 12, - "medium": 2, - "low": 3 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 12, - "dependabot_medium": 2, - "dependabot_low": 3, - "code_scanning_critical": 0, - "code_scanning_high": 2, - "secret_scanning_open": 0, - "open_high_critical": 15 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "flagship/basalt-relay", - "repo_full_name": "demo-org/basalt-relay", - "display_name": "Basalt Relay", - "path": "flagship/basalt-relay", - "section_marker": "flagship/", - "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", - "default_branch": "main" }, - "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", - "owner": "demo-operator", + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/gossamer-ridge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/hollow-tessera", + "display_name": "Hollow Tessera", + "path": "archive/hollow-tessera", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/hollow-tessera", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "Rust", - "Tauri 2" + "JavaScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-04T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1037, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5421, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "10 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 9, - "medium": 1, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 0, - "dependabot_high": 9, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 10 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/hollow-tessera", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/cinder-atlas", - "repo_full_name": "demo-org/cinder-atlas", - "display_name": "Cinder Atlas", - "path": "flagship/cinder-atlas", - "section_marker": "flagship/", + "project_key": "archive/indigo-palisade", + "display_name": "Indigo Palisade", + "path": "archive/indigo-palisade", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/indigo-palisade", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "FastAPI" + "Go" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-04T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1174, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is finish from explicit operating path." - }, - "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "12 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": false, - "context_risk": true, - "path_risk": true - }, - "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 2, - "high": 9, - "medium": 0, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 1 - }, - "zero_findings": false - } - }, - "dependabot_critical": 2, - "dependabot_high": 9, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 1, - "code_scanning_high": 0, - "secret_scanning_open": 1, - "open_high_critical": 12 + "has_ci": false, + "has_license": false, + "readme_char_count": 5558, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/indigo-palisade", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/dovetail-forge", - "repo_full_name": "demo-org/dovetail-forge", - "display_name": "Dovetail Forge", - "path": "platform/dovetail-forge", - "section_marker": "platform/", + "project_key": "archive/jetty-marquee", + "display_name": "Jetty Marquee", + "path": "archive/jetty-marquee", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/jetty-marquee", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-04T22:50:13.825998+00:00", - "has_tests": true, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1311, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 5695, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "8 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 8, - "medium": 2, - "low": 4 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/jetty-marquee", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 8, - "dependabot_medium": 2, - "dependabot_low": 4, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 8 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "platform/ember-conduit", - "repo_full_name": "demo-org/ember-conduit", - "display_name": "Ember Conduit", - "path": "platform/ember-conduit", - "section_marker": "platform/", + "project_key": "archive/kindling-arbor", + "display_name": "Kindling Arbor", + "path": "archive/kindling-arbor", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/kindling-arbor", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "C++" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-04T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1448, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5832, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "8 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 8, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/kindling-arbor", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 8, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 8 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C++" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/lattice-bezel", + "display_name": "Lattice Bezel", + "path": "archive/lattice-bezel", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/lattice-bezel", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "Swift" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": false, + "has_license": false, + "readme_char_count": 5969, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/lattice-bezel", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/fathom-beacon", - "repo_full_name": "demo-org/fathom-beacon", - "display_name": "Fathom Beacon", - "path": "platform/fathom-beacon", - "section_marker": "platform/", + "project_key": "archive/mica-turnstile", + "display_name": "Mica Turnstile", + "path": "archive/mica-turnstile", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/mica-turnstile", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-infra", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "Node" + "Rust" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-05-16T22:50:13.825998+00:00", - "has_tests": true, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1585, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 6106, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "6 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 6, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/mica-turnstile", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 6, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 6 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/glacier-quill", - "repo_full_name": "demo-org/glacier-quill", - "display_name": "Glacier Quill", - "path": "studio/glacier-quill", - "section_marker": "studio/", + "project_key": "archive/nocturne-spar", + "display_name": "Nocturne Spar", + "path": "archive/nocturne-spar", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/nocturne-spar", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Swift", - "SwiftUI" + "TypeScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-04T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1722, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 6243, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "12 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 10, - "medium": 3, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 10, - "dependabot_medium": 3, - "dependabot_low": 1, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 12 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/nocturne-spar", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/harbor-lantern", - "repo_full_name": "demo-org/harbor-lantern", - "display_name": "Harbor Lantern", - "path": "studio/harbor-lantern", - "section_marker": "studio/", + "project_key": "flagship/aurora-ledger", + "display_name": "Aurora Ledger", + "path": "flagship/aurora-ledger", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/aurora-ledger", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-product", - "activity_status": "recent", - "archived": false, "stack": [ "TypeScript", - "React" + "Next.js" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-16T22:50:13.825998+00:00", + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-06T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1859, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is operate from explicit operating path." + "readme_char_count": 900, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "7 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1337,68 +2611,68 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 7, - "medium": 1, - "low": 2 + "critical": 1, + "high": 12, + "medium": 2, + "low": 3 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 2, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1406,97 +2680,293 @@ "zero_findings": true } }, - "dependabot_critical": 0, - "dependabot_high": 7, - "dependabot_medium": 1, - "dependabot_low": 2, + "dependabot_critical": 1, + "dependabot_high": 12, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 2, "secret_scanning_open": 0, - "open_high_critical": 7 + "open_high_critical": 13 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "studio", + "legacy_context_quality": "full", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/aurora-ledger", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Next.js" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/ivory-sextant", - "repo_full_name": "demo-org/ivory-sextant", - "display_name": "Ivory Sextant", - "path": "platform/ivory-sextant", - "section_marker": "platform/", + "project_key": "flagship/basalt-relay", + "display_name": "Basalt Relay", + "path": "flagship/basalt-relay", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/basalt-relay", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Python" + "Rust", + "Tauri 2" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-05-16T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-06T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1996, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1037, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "7 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1505,26 +2975,26 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 7, + "high": 9, "medium": 1, "low": 0 }, @@ -1533,40 +3003,40 @@ "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 1, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1575,95 +3045,291 @@ } }, "dependabot_critical": 0, - "dependabot_high": 7, + "dependabot_high": 9, "dependabot_medium": 1, "dependabot_low": 0, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 1, "secret_scanning_open": 0, - "open_high_critical": 7 + "open_high_critical": 9 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/basalt-relay", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust, Tauri 2" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/juniper-kiln", - "repo_full_name": "demo-org/juniper-kiln", - "display_name": "Juniper Kiln", - "path": "studio/juniper-kiln", - "section_marker": "studio/", + "project_key": "flagship/cinder-atlas", + "display_name": "Cinder Atlas", + "path": "flagship/cinder-atlas", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/cinder-atlas", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Kotlin" + "Python", + "FastAPI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-04T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-06T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Finish from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2133, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1174, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "8 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1672,26 +3338,26 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 8, + "critical": 2, + "high": 9, "medium": 0, "low": 1 }, @@ -1700,137 +3366,335 @@ "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, + "critical": 1, "high": 0, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "open": 0 + "open": 1 }, - "zero_findings": true + "zero_findings": false } }, - "dependabot_critical": 0, - "dependabot_high": 8, + "dependabot_critical": 2, + "dependabot_high": 9, "dependabot_medium": 0, "dependabot_low": 1, - "code_scanning_critical": 0, + "code_scanning_critical": 1, "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 8 + "secret_scanning_open": 1, + "open_high_critical": 11 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "minimum-viable", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/cinder-atlas", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, FastAPI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/kestrel-loom", - "repo_full_name": "demo-org/kestrel-loom", - "display_name": "Kestrel Loom", - "path": "studio/kestrel-loom", - "section_marker": "studio/", + "project_key": "flagship/meridian-vault", + "display_name": "Meridian Vault", + "path": "flagship/meridian-vault", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/meridian-vault", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "recent", - "archived": false, "stack": [ - "Ruby" + "Python", + "Django" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-16T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-06T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2270, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "readme_char_count": 2544, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "10 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -1839,28 +3703,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, "high": 10, - "medium": 1, - "low": 0 + "medium": 4, + "low": 1 }, "zero_findings": false }, @@ -1877,7 +3741,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -1895,7 +3759,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -1903,256 +3767,1149 @@ }, "dependabot_critical": 0, "dependabot_high": 10, - "dependabot_medium": 1, - "dependabot_low": 0, + "dependabot_medium": 4, + "dependabot_low": 1, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 10 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "full", + "legacy_category": "flagship", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/meridian-vault", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, Django" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/bramble-cistern", + "display_name": "Bramble Cistern", + "path": "lab/bramble-cistern", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/bramble-cistern", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "R" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4599, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 10 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/bramble-cistern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "R" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/lumen-ferry", - "repo_full_name": "demo-org/lumen-ferry", - "display_name": "Lumen Ferry", - "path": "platform/lumen-ferry", - "section_marker": "platform/", + "project_key": "lab/dusk-pergola", + "display_name": "Dusk Pergola", + "path": "lab/dusk-pergola", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/dusk-pergola", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Go" + "OCaml" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-16T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 2407, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 4873, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "8 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", - "providers": { - "dependabot": { + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/dusk-pergola", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 7, - "medium": 0, - "low": 2 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" }, - "dependabot_critical": 1, - "dependabot_high": 7, - "dependabot_medium": 0, - "dependabot_low": 2, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "OCaml" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/foxglove-mast", + "display_name": "Foxglove Mast", + "path": "lab/foxglove-mast", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/foxglove-mast", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "Nim" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-05-18T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 5147, + "release_count": 0 + }, + "risk": { + "risk_tier": "elevated", + "risk_factors": [ + "weak-context-active", + "investigate-override", + "no-run-instructions" + ], + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 8 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", + "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "platform", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/foxglove-mast", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Nim" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/meridian-vault", - "repo_full_name": "demo-org/meridian-vault", - "display_name": "Meridian Vault", - "path": "flagship/meridian-vault", - "section_marker": "flagship/", + "project_key": "lab/onyx-placard", + "display_name": "Onyx Placard", + "path": "lab/onyx-placard", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/onyx-placard", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "Django" + "Elixir" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-04T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-05-18T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Experiment from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2544, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2818, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "10 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -2161,28 +4918,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 10, - "medium": 4, - "low": 1 + "high": 7, + "medium": 0, + "low": 0 }, "zero_findings": false }, @@ -2199,7 +4956,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2217,103 +4974,300 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 10, - "dependabot_medium": 4, - "dependabot_low": 1, + "dependabot_high": 7, + "dependabot_medium": 0, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 10 + "open_high_critical": 7 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_context_quality": "minimum-viable", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/onyx-placard", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Elixir" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/nimbus-charter", - "repo_full_name": "demo-org/nimbus-charter", - "display_name": "Nimbus Charter", - "path": "studio/nimbus-charter", - "section_marker": "studio/", + "project_key": "lab/pallas-runner", + "display_name": "Pallas Runner", + "path": "lab/pallas-runner", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/pallas-runner", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "JavaScript" + "Rust" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-06T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 2681, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2955, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "7 open high/critical security alerts", - "no meaningful activity in the recent window" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, @@ -2322,28 +5276,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 7, - "medium": 2, - "low": 3 + "high": 8, + "medium": 1, + "low": 1 }, "zero_findings": false }, @@ -2360,7 +5314,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2378,434 +5332,1226 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-08T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 7, - "dependabot_medium": 2, - "dependabot_low": 3, + "dependabot_high": 8, + "dependabot_medium": 1, + "dependabot_low": 1, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 7 + "open_high_critical": 8 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/pallas-runner", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/onyx-placard", - "repo_full_name": "demo-org/onyx-placard", - "display_name": "Onyx Placard", - "path": "lab/onyx-placard", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/quartz-signal", + "display_name": "Quartz Signal", + "path": "lab/quartz-signal", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/quartz-signal", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Elixir" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-16T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2818, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3092, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "7 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", + "coverage_state": "stale", "cohort_member": true, "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", + "receipt_state": "stale", + "source_produced_at": "2026-06-07T21:09:43.833784+00:00", "providers": { "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", + "observed_at": "2026-06-07T21:09:43.833784+00:00", "pagination_complete": true, - "counts": { - "critical": 0, - "high": 7, - "medium": 0, - "low": 0 - }, - "zero_findings": false + "counts": null, + "zero_findings": null }, "code_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-06-07T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null }, "secret_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-06-07T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null } }, - "dependabot_critical": 0, - "dependabot_high": 7, - "dependabot_medium": 0, - "dependabot_low": 0, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-06-07T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/quartz-signal", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/solstice-cairn", + "display_name": "Solstice Cairn", + "path": "lab/solstice-cairn", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/solstice-cairn", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "C" + ], + "context_quality": "minimum-viable", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-05-18T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3366, + "release_count": 0 + }, + "risk": { + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 7 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", + "legacy_status": "manual-only", "legacy_context_quality": "minimum-viable", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/solstice-cairn", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/pallas-runner", - "repo_full_name": "demo-org/pallas-runner", - "display_name": "Pallas Runner", - "path": "lab/pallas-runner", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/tabard-anvil", + "display_name": "Tabard Anvil", + "path": "lab/tabard-anvil", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/tabard-anvil", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "Zig" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-04T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-05-18T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 2955, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3503, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "8 open high/critical security alerts", - "no CI workflow", - "thin project context" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": true, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", - "providers": { - "dependabot": { + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/tabard-anvil", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 8, - "medium": 1, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-06T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Zig" }, - "dependabot_critical": 0, - "dependabot_high": 8, - "dependabot_medium": 1, - "dependabot_low": 1, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 8 + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "lab/quartz-signal", - "repo_full_name": "demo-org/quartz-signal", - "display_name": "Quartz Signal", - "path": "lab/quartz-signal", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/vellum-compass", + "display_name": "Vellum Compass", + "path": "lab/vellum-compass", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/vellum-compass", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Python" + "Haskell" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 3092, - "release_count": 0, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 3777, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", - "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2820,93 +6566,281 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", + "legacy_status": "active", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/vellum-compass", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Haskell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/rialto-pennant", - "repo_full_name": "demo-org/rialto-pennant", - "display_name": "Rialto Pennant", - "path": "studio/rialto-pennant", - "section_marker": "studio/", + "project_key": "lab/xenon-parapet", + "display_name": "Xenon Parapet", + "path": "lab/xenon-parapet", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/xenon-parapet", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, "stack": [ - "TypeScript" + "Shell" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-05-18T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3229, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4051, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-06-06T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2922,83 +6856,268 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/xenon-parapet", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Shell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/solstice-cairn", - "repo_full_name": "demo-org/solstice-cairn", - "display_name": "Solstice Cairn", - "path": "lab/solstice-cairn", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/zephyr-bastion", + "display_name": "Zephyr Bastion", + "path": "lab/zephyr-bastion", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/zephyr-bastion", "default_branch": "main" }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", + "declared": { "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "C" + "Perl" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-16T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": false, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3366, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4325, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3023,101 +7142,357 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "minimum-viable", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/zephyr-bastion", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Perl" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/tabard-anvil", - "repo_full_name": "demo-org/tabard-anvil", - "display_name": "Tabard Anvil", - "path": "lab/tabard-anvil", - "section_marker": "lab/", + "project_key": "platform/dovetail-forge", + "display_name": "Dovetail Forge", + "path": "platform/dovetail-forge", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/dovetail-forge", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Zig" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-16T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-06T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": false, + "has_ci": true, "has_license": true, - "readme_char_count": 3503, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1311, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 8, + "medium": 2, + "low": 4 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 8, + "dependabot_medium": 2, + "dependabot_low": 4, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 8 }, "advisory": { "notion_portfolio_call": "", @@ -3125,900 +7500,1725 @@ "notion_current_state": "", "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/dovetail-forge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/umbra-trellis", - "repo_full_name": "demo-org/umbra-trellis", - "display_name": "Umbra Trellis", - "path": "studio/umbra-trellis", - "section_marker": "studio/", + "project_key": "platform/ember-conduit", + "display_name": "Ember Conduit", + "path": "platform/ember-conduit", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ember-conduit", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Lua" + "Rust" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-06T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3640, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1448, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 8, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 8, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 8 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "active", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/vellum-compass", - "repo_full_name": "demo-org/vellum-compass", - "display_name": "Vellum Compass", - "path": "lab/vellum-compass", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "Haskell" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 3777, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ember-conduit", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/wicker-obelisk", - "repo_full_name": "demo-org/wicker-obelisk", - "display_name": "Wicker Obelisk", - "path": "studio/wicker-obelisk", - "section_marker": "studio/", + "project_key": "platform/fathom-beacon", + "display_name": "Fathom Beacon", + "path": "platform/fathom-beacon", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/fathom-beacon", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "PHP" + "TypeScript", + "Node" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-05-18T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3914, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1585, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 6, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 6, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/xenon-parapet", - "repo_full_name": "demo-org/xenon-parapet", - "display_name": "Xenon Parapet", - "path": "lab/xenon-parapet", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, - "stack": [ - "Shell" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-16T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4051, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/fathom-beacon", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Node" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/yarrow-spindle", - "repo_full_name": "demo-org/yarrow-spindle", - "display_name": "Yarrow Spindle", - "path": "studio/yarrow-spindle", - "section_marker": "studio/", + "project_key": "platform/ivory-sextant", + "display_name": "Ivory Sextant", + "path": "platform/ivory-sextant", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ivory-sextant", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Java" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-05-18T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4188, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1996, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 7, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 7, + "dependabot_medium": 1, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 7 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "manual-only", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/zephyr-bastion", - "repo_full_name": "demo-org/zephyr-bastion", - "display_name": "Zephyr Bastion", - "path": "lab/zephyr-bastion", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, - "stack": [ - "Perl" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 4325, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ivory-sextant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/amber-thicket", - "repo_full_name": "demo-org/amber-thicket", - "display_name": "Amber Thicket", - "path": "studio/amber-thicket", - "section_marker": "studio/", + "project_key": "platform/lumen-ferry", + "display_name": "Lumen Ferry", + "path": "platform/lumen-ferry", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/lumen-ferry", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "recent", - "archived": false, "stack": [ - "Dart", - "Flutter" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-16T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-05-18T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4462, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2407, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 7, + "medium": 0, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 1, + "dependabot_high": 7, + "dependabot_medium": 0, + "dependabot_low": 2, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 8 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/bramble-cistern", - "repo_full_name": "demo-org/bramble-cistern", - "display_name": "Bramble Cistern", - "path": "lab/bramble-cistern", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "R" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 4599, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": false, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/lumen-ferry", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/cobalt-wharf", - "repo_full_name": "demo-org/cobalt-wharf", - "display_name": "Cobalt Wharf", - "path": "studio/cobalt-wharf", - "section_marker": "studio/", - "has_git": true, + "project_key": "studio/amber-thicket", + "display_name": "Amber Thicket", + "path": "studio/amber-thicket", "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/amber-thicket", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Scala" + "Dart", + "Flutter" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-05-16T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4736, - "release_count": 0, + "last_meaningful_activity_at": "2026-05-18T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 4462, + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, - "doctor_gap": true, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4042,86 +9242,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/amber-thicket", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Dart, Flutter" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/dusk-pergola", - "repo_full_name": "demo-org/dusk-pergola", - "display_name": "Dusk Pergola", - "path": "lab/dusk-pergola", - "section_marker": "lab/", + "project_key": "studio/cobalt-wharf", + "display_name": "Cobalt Wharf", + "path": "studio/cobalt-wharf", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/cobalt-wharf", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "OCaml" + "Scala" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-05-18T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 4873, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 4736, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4145,84 +9529,268 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", + "legacy_status": "manual-only", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/cobalt-wharf", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Scala" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { "project_key": "studio/errant-fathom", - "repo_full_name": "demo-org/errant-fathom", "display_name": "Errant Fathom", "path": "studio/errant-fathom", - "section_marker": "studio/", - "has_git": true, "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/errant-fathom", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ "TypeScript" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, "readme_char_count": 5010, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4250,593 +9818,2133 @@ "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/errant-fathom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/foxglove-mast", - "repo_full_name": "demo-org/foxglove-mast", - "display_name": "Foxglove Mast", - "path": "lab/foxglove-mast", - "section_marker": "lab/", + "project_key": "studio/glacier-quill", + "display_name": "Glacier Quill", + "path": "studio/glacier-quill", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/glacier-quill", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Nim" + "Swift", + "SwiftUI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-16T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 5147, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-06T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1722, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 10, + "medium": 3, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "note": 0, + "warning": 0 + }, + "zero_findings": false + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 1, + "dependabot_high": 10, + "dependabot_medium": 3, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 1, + "secret_scanning_open": 0, + "open_high_critical": 11 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/glacier-quill", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift, SwiftUI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "archive/gossamer-ridge", - "repo_full_name": "demo-org/gossamer-ridge", - "display_name": "Gossamer Ridge", - "path": "archive/gossamer-ridge", - "section_marker": "archive/", + "project_key": "studio/harbor-lantern", + "display_name": "Harbor Lantern", + "path": "studio/harbor-lantern", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/harbor-lantern", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Python" + "TypeScript", + "React" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5284, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "last_meaningful_activity_at": "2026-05-18T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1859, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 7, + "medium": 1, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 7, + "dependabot_medium": 1, + "dependabot_low": 2, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 7 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/harbor-lantern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, React" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/hollow-tessera", - "repo_full_name": "demo-org/hollow-tessera", - "display_name": "Hollow Tessera", - "path": "archive/hollow-tessera", - "section_marker": "archive/", + "project_key": "studio/juniper-kiln", + "display_name": "Juniper Kiln", + "path": "studio/juniper-kiln", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/juniper-kiln", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "JavaScript" + "Kotlin" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5421, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-06T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2133, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 8, + "medium": 0, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 8, + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 8 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/juniper-kiln", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Kotlin" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/indigo-palisade", - "repo_full_name": "demo-org/indigo-palisade", - "display_name": "Indigo Palisade", - "path": "archive/indigo-palisade", - "section_marker": "archive/", + "project_key": "studio/kestrel-loom", + "display_name": "Kestrel Loom", + "path": "studio/kestrel-loom", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/kestrel-loom", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5558, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-05-18T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2270, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 10, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 10, + "dependabot_medium": 1, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 10 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/kestrel-loom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/jetty-marquee", - "repo_full_name": "demo-org/jetty-marquee", - "display_name": "Jetty Marquee", - "path": "archive/jetty-marquee", - "section_marker": "archive/", + "project_key": "studio/nimbus-charter", + "display_name": "Nimbus Charter", + "path": "studio/nimbus-charter", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/nimbus-charter", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Ruby" + "JavaScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 5695, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "decision-needed", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2681, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-08T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 7, + "medium": 2, + "low": 3 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 7, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 7 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/nimbus-charter", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/kindling-arbor", - "repo_full_name": "demo-org/kindling-arbor", - "display_name": "Kindling Arbor", - "path": "archive/kindling-arbor", - "section_marker": "archive/", + "project_key": "studio/rialto-pennant", + "display_name": "Rialto Pennant", + "path": "studio/rialto-pennant", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/rialto-pennant", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "C++" + "TypeScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5832, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3229, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, + "coverage_state": "stale", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "stale", + "source_produced_at": "2026-06-07T21:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-07T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "code_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-07T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-07T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + } + }, "dependabot_critical": null, "dependabot_high": null, "dependabot_medium": null, @@ -4850,83 +11958,275 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "manual-only", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-06-07T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/rialto-pennant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/lattice-bezel", - "repo_full_name": "demo-org/lattice-bezel", - "display_name": "Lattice Bezel", - "path": "archive/lattice-bezel", - "section_marker": "archive/", + "project_key": "studio/umbra-trellis", + "display_name": "Umbra Trellis", + "path": "studio/umbra-trellis", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/umbra-trellis", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Swift" + "Lua" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5969, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3640, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4946,87 +12246,272 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/umbra-trellis", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Lua" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/mica-turnstile", - "repo_full_name": "demo-org/mica-turnstile", - "display_name": "Mica Turnstile", - "path": "archive/mica-turnstile", - "section_marker": "archive/", + "project_key": "studio/wicker-obelisk", + "display_name": "Wicker Obelisk", + "path": "studio/wicker-obelisk", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/wicker-obelisk", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Rust" + "PHP" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 6106, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3914, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5050,84 +12535,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/wicker-obelisk", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "PHP" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/nocturne-spar", - "repo_full_name": "demo-org/nocturne-spar", - "display_name": "Nocturne Spar", - "path": "archive/nocturne-spar", - "section_marker": "archive/", + "project_key": "studio/yarrow-spindle", + "display_name": "Yarrow Spindle", + "path": "studio/yarrow-spindle", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/yarrow-spindle", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "TypeScript" + "Java" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-11-28T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 6243, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-11-30T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4188, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5151,34 +12822,238 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-08T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/yarrow-spindle", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-11-30T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Java" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] } ], "rollups": { "risk_tier_counts": { - "elevated": 16, - "moderate": 12, - "baseline": 4, - "deferred": 8 + "elevated": 10, + "moderate": 9, + "baseline": 10, + "deferred": 11 }, "security": { - "coverage_state": "partial", + "scanned_count": 10, + "unavailable_count": 30, "complete_repo_count": 10, "partial_repo_count": 6, "stale_count": 2, "unknown_count": 22, - "scanned_count": 10, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "dependabot_observed_count": 16, + "code_scanning_observed_count": 10, + "secret_scanning_observed_count": 10, + "dependabot_zero_finding_count": 0, + "code_scanning_zero_finding_count": 6, + "secret_scanning_zero_finding_count": 9, + "remote_default_branch_observed_count": 16, + "remote_default_branch_partial_count": 0, + "remote_default_branch_stale_count": 2, + "remote_default_branch_unavailable_count": 22, + "coverage_state": "partial", "repos_with_open_high_critical": 16, "total_open_high": 133, "total_open_critical": 5 }, "decision": { - "decision_needed_count": 3, - "default_attention_count": 10 + "decision_needed_count": 13, + "default_attention_count": 13 } } } \ No newline at end of file diff --git a/output/demo/portfolio-truth-history-02.json b/output/demo/portfolio-truth-history-02.json index 5b0ac62f..08e170cf 100644 --- a/output/demo/portfolio-truth-history-02.json +++ b/output/demo/portfolio-truth-history-02.json @@ -1,15 +1,98 @@ { "schema_version": "0.11.0", + "generated_at": "2026-06-15T22:09:43.833784+00:00", "derivation_policy_version": "portfolio_attention.v3", - "generated_at": "2026-06-13T22:50:13.825998+00:00", - "workspace_root": "/demo-workspace", - "producer": { - "repository": "demo-org/portfolio-auditor", - "checkout_role": "demo-fixture", - "worktree_clean": true, - "dirty_path_count": 0, - "verified_at": "2026-06-13T22:50:13.825998+00:00" + "producer": {}, + "inputs": { + "catalog": { + "source_id": "portfolio-catalog", + "sha256": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00" + }, + "workspace": { + "source_id": "projects-root", + "observed_at": "2026-06-15T22:09:43.833784+00:00" + }, + "notion": { + "mode": "unavailable", + "observed_at": null, + "carried_from_generated_at": null + }, + "github_security": { + "source_id": "github-security-coverage-receipt", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "produced_at": "2026-06-15T22:09:43.833784+00:00", + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 18, + "path": "/demo-workspace/github-security-coverage.json", + "receipt_id": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", + "content_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" + } + }, + "coverage": [ + { + "source": "workspace", + "state": "observed", + "project_count": 40 + }, + { + "source": "git", + "state": "observed", + "observed_count": 40, + "project_count": 40 + }, + { + "source": "github_security", + "state": "partial", + "scanned_count": 10, + "complete_repo_count": 10, + "partial_repo_count": 6, + "stale_count": 2, + "unknown_count": 22, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "provider_observed_counts": { + "dependabot": 16, + "code_scanning": 10, + "secret_scanning": 10 + }, + "provider_zero_finding_counts": { + "dependabot": 0, + "code_scanning": 6, + "secret_scanning": 9 + }, + "remote_default_branch_counts": { + "observed": 16, + "partial": 0, + "stale": 2, + "credential_unavailable": 0, + "forbidden": 0, + "not_found": 0, + "rate_limited": 0, + "transient_error": 0, + "malformed": 0, + "not_requested": 0, + "unknown": 22 + }, + "project_count": 40 + }, + { + "source": "notion", + "state": "unknown", + "observed_count": 0 + } + ], + "exclusions": { + "policy_version": "workspace_discovery.v2", + "counts": {} }, + "workspace_root": "/demo-workspace", "source_summary": { "workspace_root": "/demo-workspace", "project_count": 40, @@ -17,1318 +100,2509 @@ "catalog_warnings": [], "legacy_registry_rows": 40, "notion_context_rows": 0, - "notion_context_carried_forward": 0, + "notion_context_carried_forward": false, "context_quality_counts": { + "none": 8, "full": 8, "standard": 8, "minimum-viable": 8, - "boilerplate": 8, - "none": 8 + "boilerplate": 8 }, "activity_status_counts": { + "stale": 19, "active": 9, - "recent": 12, - "stale": 19 + "recent": 12 }, + "archived_count": 8, "attention_state_counts": { - "active-product": 3, - "decision-needed": 3, - "active-infra": 4, - "manual-only": 7, + "archived": 8, + "decision-needed": 13, "experiment": 8, - "parked": 7, - "archived": 8 + "parked": 6, + "manual-only": 5 }, - "archived_count": 8, "github_archived_count": 0, "duplicate_display_names": [], "unresolved_duplicate_display_names": [] }, "precedence_matrix": { - "identity": [ - "demo fixture" + "declared.owner": [ + "catalog_repo", + "catalog_group" + ], + "declared.team": [ + "catalog_repo", + "catalog_group" + ], + "declared.purpose": [ + "catalog_repo", + "catalog_group" + ], + "declared.lifecycle_state": [ + "catalog_repo", + "catalog_group" + ], + "declared.criticality": [ + "catalog_repo", + "catalog_group" + ], + "declared.review_cadence": [ + "catalog_repo", + "catalog_group" + ], + "declared.intended_disposition": [ + "catalog_repo", + "catalog_group" + ], + "declared.maturity_program": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.target_maturity": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.operating_path": [ + "normalized" + ], + "declared.category": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "declared.tool_provenance": [ + "catalog_repo", + "catalog_group", + "inference", + "legacy_registry" + ], + "declared.notes": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "derived.stack": [ + "workspace", + "legacy_registry" + ], + "derived.context_quality": [ + "workspace", + "catalog_repo", + "catalog_group" + ], + "derived.context_files": [ + "workspace" ], - "declared": [ - "demo fixture" + "derived.primary_context_file": [ + "workspace" ], - "derived": [ - "demo fixture" + "derived.project_summary_present": [ + "workspace" ], - "risk": [ - "demo fixture" + "derived.current_state_present": [ + "workspace" ], - "security": [ - "demo fixture receipt" + "derived.stack_present": [ + "workspace" + ], + "derived.run_instructions_present": [ + "workspace" + ], + "derived.known_risks_present": [ + "workspace" + ], + "derived.next_recommended_move_present": [ + "workspace" + ], + "derived.last_meaningful_activity_at": [ + "git", + "workspace" + ], + "derived.activity_status": [ + "derived" + ], + "derived.archived": [ + "derived" + ], + "derived.attention_state": [ + "derived" + ], + "derived.path_override": [ + "normalized" + ], + "derived.path_confidence": [ + "normalized" + ], + "derived.path_rationale": [ + "normalized" + ], + "derived.has_tests": [ + "workspace" + ], + "derived.has_ci": [ + "workspace" + ], + "derived.readme_char_count": [ + "workspace" ] }, - "coverage": [ - { - "source": "workspace", - "state": "observed", - "project_count": 40 - }, - { - "source": "github_security", - "state": "partial", - "project_count": 40, - "complete_repo_count": 10, - "partial_repo_count": 6, - "stale_count": 2, - "unknown_count": 22 - } - ], - "exclusions": [], - "inputs": [], "warnings": [], "projects": [ { "identity": { - "project_key": "flagship/aurora-ledger", - "repo_full_name": "demo-org/aurora-ledger", - "display_name": "Aurora Ledger", - "path": "flagship/aurora-ledger", - "section_marker": "flagship/", + "project_key": "archive/gossamer-ridge", + "display_name": "Gossamer Ridge", + "path": "archive/gossamer-ridge", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/gossamer-ridge", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "TypeScript", - "Next.js" + "Python" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-11T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 900, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5284, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "14 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 11, - "medium": 2, - "low": 3 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 11, - "dependabot_medium": 2, - "dependabot_low": 3, - "code_scanning_critical": 0, - "code_scanning_high": 2, - "secret_scanning_open": 0, - "open_high_critical": 14 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "flagship/basalt-relay", - "repo_full_name": "demo-org/basalt-relay", - "display_name": "Basalt Relay", - "path": "flagship/basalt-relay", - "section_marker": "flagship/", - "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", - "default_branch": "main" }, - "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", - "owner": "demo-operator", + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/gossamer-ridge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/hollow-tessera", + "display_name": "Hollow Tessera", + "path": "archive/hollow-tessera", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/hollow-tessera", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "Rust", - "Tauri 2" + "JavaScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-11T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1037, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5421, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "9 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 8, - "medium": 1, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 0, - "dependabot_high": 8, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 9 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/hollow-tessera", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/cinder-atlas", - "repo_full_name": "demo-org/cinder-atlas", - "display_name": "Cinder Atlas", - "path": "flagship/cinder-atlas", - "section_marker": "flagship/", + "project_key": "archive/indigo-palisade", + "display_name": "Indigo Palisade", + "path": "archive/indigo-palisade", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/indigo-palisade", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "FastAPI" + "Go" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-11T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1174, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is finish from explicit operating path." - }, - "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "11 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": false, - "context_risk": true, - "path_risk": true - }, - "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 2, - "high": 8, - "medium": 0, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 1 - }, - "zero_findings": false - } - }, - "dependabot_critical": 2, - "dependabot_high": 8, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 1, - "code_scanning_high": 0, - "secret_scanning_open": 1, - "open_high_critical": 11 + "has_ci": false, + "has_license": false, + "readme_char_count": 5558, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/indigo-palisade", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/dovetail-forge", - "repo_full_name": "demo-org/dovetail-forge", - "display_name": "Dovetail Forge", - "path": "platform/dovetail-forge", - "section_marker": "platform/", + "project_key": "archive/jetty-marquee", + "display_name": "Jetty Marquee", + "path": "archive/jetty-marquee", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/jetty-marquee", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-11T22:50:13.825998+00:00", - "has_tests": true, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1311, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 5695, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "7 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 7, - "medium": 2, - "low": 4 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/jetty-marquee", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 7, - "dependabot_medium": 2, - "dependabot_low": 4, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 7 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "platform/ember-conduit", - "repo_full_name": "demo-org/ember-conduit", - "display_name": "Ember Conduit", - "path": "platform/ember-conduit", - "section_marker": "platform/", + "project_key": "archive/kindling-arbor", + "display_name": "Kindling Arbor", + "path": "archive/kindling-arbor", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/kindling-arbor", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "C++" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-11T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1448, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5832, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "7 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 7, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/kindling-arbor", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 7, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 7 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C++" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/lattice-bezel", + "display_name": "Lattice Bezel", + "path": "archive/lattice-bezel", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/lattice-bezel", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "Swift" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": false, + "has_license": false, + "readme_char_count": 5969, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/lattice-bezel", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/fathom-beacon", - "repo_full_name": "demo-org/fathom-beacon", - "display_name": "Fathom Beacon", - "path": "platform/fathom-beacon", - "section_marker": "platform/", + "project_key": "archive/mica-turnstile", + "display_name": "Mica Turnstile", + "path": "archive/mica-turnstile", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/mica-turnstile", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-infra", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "Node" + "Rust" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-05-23T22:50:13.825998+00:00", - "has_tests": true, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1585, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 6106, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "5 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 5, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/mica-turnstile", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 5, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 5 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/glacier-quill", - "repo_full_name": "demo-org/glacier-quill", - "display_name": "Glacier Quill", - "path": "studio/glacier-quill", - "section_marker": "studio/", + "project_key": "archive/nocturne-spar", + "display_name": "Nocturne Spar", + "path": "archive/nocturne-spar", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/nocturne-spar", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Swift", - "SwiftUI" + "TypeScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-11T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1722, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 6243, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "11 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 9, - "medium": 3, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 9, - "dependabot_medium": 3, - "dependabot_low": 1, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 11 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/nocturne-spar", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/harbor-lantern", - "repo_full_name": "demo-org/harbor-lantern", - "display_name": "Harbor Lantern", - "path": "studio/harbor-lantern", - "section_marker": "studio/", + "project_key": "flagship/aurora-ledger", + "display_name": "Aurora Ledger", + "path": "flagship/aurora-ledger", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/aurora-ledger", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-product", - "activity_status": "recent", - "archived": false, "stack": [ "TypeScript", - "React" + "Next.js" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-23T22:50:13.825998+00:00", + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-13T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1859, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is operate from explicit operating path." + "readme_char_count": 900, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "6 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1337,68 +2611,68 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 6, - "medium": 1, - "low": 2 + "critical": 1, + "high": 11, + "medium": 2, + "low": 3 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 2, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1406,97 +2680,293 @@ "zero_findings": true } }, - "dependabot_critical": 0, - "dependabot_high": 6, - "dependabot_medium": 1, - "dependabot_low": 2, + "dependabot_critical": 1, + "dependabot_high": 11, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 2, "secret_scanning_open": 0, - "open_high_critical": 6 + "open_high_critical": 12 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "studio", + "legacy_context_quality": "full", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/aurora-ledger", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Next.js" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/ivory-sextant", - "repo_full_name": "demo-org/ivory-sextant", - "display_name": "Ivory Sextant", - "path": "platform/ivory-sextant", - "section_marker": "platform/", + "project_key": "flagship/basalt-relay", + "display_name": "Basalt Relay", + "path": "flagship/basalt-relay", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/basalt-relay", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Python" + "Rust", + "Tauri 2" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-05-23T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-13T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1996, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1037, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "6 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1505,26 +2975,26 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 6, + "high": 8, "medium": 1, "low": 0 }, @@ -1533,40 +3003,40 @@ "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 1, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1575,95 +3045,291 @@ } }, "dependabot_critical": 0, - "dependabot_high": 6, + "dependabot_high": 8, "dependabot_medium": 1, "dependabot_low": 0, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 1, "secret_scanning_open": 0, - "open_high_critical": 6 + "open_high_critical": 8 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/basalt-relay", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust, Tauri 2" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/juniper-kiln", - "repo_full_name": "demo-org/juniper-kiln", - "display_name": "Juniper Kiln", - "path": "studio/juniper-kiln", - "section_marker": "studio/", + "project_key": "flagship/cinder-atlas", + "display_name": "Cinder Atlas", + "path": "flagship/cinder-atlas", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/cinder-atlas", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Kotlin" + "Python", + "FastAPI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-11T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-13T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Finish from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2133, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1174, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "7 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1672,26 +3338,26 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 7, + "critical": 2, + "high": 8, "medium": 0, "low": 1 }, @@ -1700,137 +3366,335 @@ "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, + "critical": 1, "high": 0, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "open": 0 + "open": 1 }, - "zero_findings": true + "zero_findings": false } }, - "dependabot_critical": 0, - "dependabot_high": 7, + "dependabot_critical": 2, + "dependabot_high": 8, "dependabot_medium": 0, "dependabot_low": 1, - "code_scanning_critical": 0, + "code_scanning_critical": 1, "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 7 + "secret_scanning_open": 1, + "open_high_critical": 10 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "minimum-viable", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/cinder-atlas", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, FastAPI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/kestrel-loom", - "repo_full_name": "demo-org/kestrel-loom", - "display_name": "Kestrel Loom", - "path": "studio/kestrel-loom", - "section_marker": "studio/", + "project_key": "flagship/meridian-vault", + "display_name": "Meridian Vault", + "path": "flagship/meridian-vault", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/meridian-vault", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "recent", - "archived": false, "stack": [ - "Ruby" + "Python", + "Django" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-23T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-13T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2270, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "readme_char_count": 2544, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "9 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -1839,28 +3703,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, "high": 9, - "medium": 1, - "low": 0 + "medium": 4, + "low": 1 }, "zero_findings": false }, @@ -1877,7 +3741,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -1895,7 +3759,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -1903,256 +3767,1149 @@ }, "dependabot_critical": 0, "dependabot_high": 9, - "dependabot_medium": 1, - "dependabot_low": 0, + "dependabot_medium": 4, + "dependabot_low": 1, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 9 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "full", + "legacy_category": "flagship", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/meridian-vault", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, Django" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/bramble-cistern", + "display_name": "Bramble Cistern", + "path": "lab/bramble-cistern", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/bramble-cistern", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "R" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4599, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 9 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/bramble-cistern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "R" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/lumen-ferry", - "repo_full_name": "demo-org/lumen-ferry", - "display_name": "Lumen Ferry", - "path": "platform/lumen-ferry", - "section_marker": "platform/", + "project_key": "lab/dusk-pergola", + "display_name": "Dusk Pergola", + "path": "lab/dusk-pergola", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/dusk-pergola", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Go" + "OCaml" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 2407, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 4873, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "7 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", - "providers": { - "dependabot": { + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/dusk-pergola", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 6, - "medium": 0, - "low": 2 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" }, - "dependabot_critical": 1, - "dependabot_high": 6, - "dependabot_medium": 0, - "dependabot_low": 2, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "OCaml" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/foxglove-mast", + "display_name": "Foxglove Mast", + "path": "lab/foxglove-mast", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/foxglove-mast", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "Nim" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-05-25T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 5147, + "release_count": 0 + }, + "risk": { + "risk_tier": "elevated", + "risk_factors": [ + "weak-context-active", + "investigate-override", + "no-run-instructions" + ], + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 7 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", + "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "platform", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/foxglove-mast", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Nim" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/meridian-vault", - "repo_full_name": "demo-org/meridian-vault", - "display_name": "Meridian Vault", - "path": "flagship/meridian-vault", - "section_marker": "flagship/", + "project_key": "lab/onyx-placard", + "display_name": "Onyx Placard", + "path": "lab/onyx-placard", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/onyx-placard", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "Django" + "Elixir" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-11T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-05-25T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Experiment from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2544, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2818, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "9 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -2161,28 +4918,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 9, - "medium": 4, - "low": 1 + "high": 6, + "medium": 0, + "low": 0 }, "zero_findings": false }, @@ -2199,7 +4956,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2217,103 +4974,300 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 9, - "dependabot_medium": 4, - "dependabot_low": 1, + "dependabot_high": 6, + "dependabot_medium": 0, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 9 + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_context_quality": "minimum-viable", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/onyx-placard", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Elixir" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/nimbus-charter", - "repo_full_name": "demo-org/nimbus-charter", - "display_name": "Nimbus Charter", - "path": "studio/nimbus-charter", - "section_marker": "studio/", + "project_key": "lab/pallas-runner", + "display_name": "Pallas Runner", + "path": "lab/pallas-runner", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/pallas-runner", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "JavaScript" + "Rust" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-13T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 2681, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2955, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "6 open high/critical security alerts", - "no meaningful activity in the recent window" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, @@ -2322,28 +5276,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 6, - "medium": 2, - "low": 3 + "high": 7, + "medium": 1, + "low": 1 }, "zero_findings": false }, @@ -2360,7 +5314,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2378,434 +5332,1226 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-15T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 6, - "dependabot_medium": 2, - "dependabot_low": 3, + "dependabot_high": 7, + "dependabot_medium": 1, + "dependabot_low": 1, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 6 + "open_high_critical": 7 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/pallas-runner", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/onyx-placard", - "repo_full_name": "demo-org/onyx-placard", - "display_name": "Onyx Placard", - "path": "lab/onyx-placard", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/quartz-signal", + "display_name": "Quartz Signal", + "path": "lab/quartz-signal", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/quartz-signal", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Elixir" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-23T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2818, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3092, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "6 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", + "coverage_state": "stale", "cohort_member": true, "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", + "receipt_state": "stale", + "source_produced_at": "2026-06-14T21:09:43.833784+00:00", "providers": { "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", + "observed_at": "2026-06-14T21:09:43.833784+00:00", "pagination_complete": true, - "counts": { - "critical": 0, - "high": 6, - "medium": 0, - "low": 0 - }, - "zero_findings": false + "counts": null, + "zero_findings": null }, "code_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-06-14T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null }, "secret_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-06-14T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null } }, - "dependabot_critical": 0, - "dependabot_high": 6, - "dependabot_medium": 0, - "dependabot_low": 0, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-06-14T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/quartz-signal", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/solstice-cairn", + "display_name": "Solstice Cairn", + "path": "lab/solstice-cairn", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/solstice-cairn", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "C" + ], + "context_quality": "minimum-viable", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-05-25T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3366, + "release_count": 0 + }, + "risk": { + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 6 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", + "legacy_status": "manual-only", "legacy_context_quality": "minimum-viable", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/solstice-cairn", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/pallas-runner", - "repo_full_name": "demo-org/pallas-runner", - "display_name": "Pallas Runner", - "path": "lab/pallas-runner", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/tabard-anvil", + "display_name": "Tabard Anvil", + "path": "lab/tabard-anvil", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/tabard-anvil", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "Zig" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-11T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-05-25T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 2955, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3503, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "7 open high/critical security alerts", - "no CI workflow", - "thin project context" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": true, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", - "providers": { - "dependabot": { + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/tabard-anvil", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 7, - "medium": 1, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-13T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Zig" }, - "dependabot_critical": 0, - "dependabot_high": 7, - "dependabot_medium": 1, - "dependabot_low": 1, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 7 + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "lab/quartz-signal", - "repo_full_name": "demo-org/quartz-signal", - "display_name": "Quartz Signal", - "path": "lab/quartz-signal", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/vellum-compass", + "display_name": "Vellum Compass", + "path": "lab/vellum-compass", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/vellum-compass", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Python" + "Haskell" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 3092, - "release_count": 0, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 3777, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", - "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2820,93 +6566,281 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", + "legacy_status": "active", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/vellum-compass", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Haskell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/rialto-pennant", - "repo_full_name": "demo-org/rialto-pennant", - "display_name": "Rialto Pennant", - "path": "studio/rialto-pennant", - "section_marker": "studio/", + "project_key": "lab/xenon-parapet", + "display_name": "Xenon Parapet", + "path": "lab/xenon-parapet", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/xenon-parapet", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, "stack": [ - "TypeScript" + "Shell" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-05-25T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3229, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4051, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-06-13T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2922,83 +6856,268 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/xenon-parapet", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Shell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/solstice-cairn", - "repo_full_name": "demo-org/solstice-cairn", - "display_name": "Solstice Cairn", - "path": "lab/solstice-cairn", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/zephyr-bastion", + "display_name": "Zephyr Bastion", + "path": "lab/zephyr-bastion", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/zephyr-bastion", "default_branch": "main" }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", + "declared": { "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "C" + "Perl" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-23T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": false, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3366, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4325, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3023,101 +7142,357 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "minimum-viable", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/zephyr-bastion", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Perl" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/tabard-anvil", - "repo_full_name": "demo-org/tabard-anvil", - "display_name": "Tabard Anvil", - "path": "lab/tabard-anvil", - "section_marker": "lab/", + "project_key": "platform/dovetail-forge", + "display_name": "Dovetail Forge", + "path": "platform/dovetail-forge", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/dovetail-forge", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Zig" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-23T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-13T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": false, + "has_ci": true, "has_license": true, - "readme_char_count": 3503, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1311, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 7, + "medium": 2, + "low": 4 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 7, + "dependabot_medium": 2, + "dependabot_low": 4, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 7 }, "advisory": { "notion_portfolio_call": "", @@ -3125,900 +7500,1725 @@ "notion_current_state": "", "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/dovetail-forge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/umbra-trellis", - "repo_full_name": "demo-org/umbra-trellis", - "display_name": "Umbra Trellis", - "path": "studio/umbra-trellis", - "section_marker": "studio/", + "project_key": "platform/ember-conduit", + "display_name": "Ember Conduit", + "path": "platform/ember-conduit", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ember-conduit", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Lua" + "Rust" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-13T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3640, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1448, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 7, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 7, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 7 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "active", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/vellum-compass", - "repo_full_name": "demo-org/vellum-compass", - "display_name": "Vellum Compass", - "path": "lab/vellum-compass", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "Haskell" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 3777, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ember-conduit", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/wicker-obelisk", - "repo_full_name": "demo-org/wicker-obelisk", - "display_name": "Wicker Obelisk", - "path": "studio/wicker-obelisk", - "section_marker": "studio/", + "project_key": "platform/fathom-beacon", + "display_name": "Fathom Beacon", + "path": "platform/fathom-beacon", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/fathom-beacon", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "PHP" + "TypeScript", + "Node" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-05-25T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3914, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1585, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 5, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 5, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/xenon-parapet", - "repo_full_name": "demo-org/xenon-parapet", - "display_name": "Xenon Parapet", - "path": "lab/xenon-parapet", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, - "stack": [ - "Shell" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4051, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/fathom-beacon", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Node" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/yarrow-spindle", - "repo_full_name": "demo-org/yarrow-spindle", - "display_name": "Yarrow Spindle", - "path": "studio/yarrow-spindle", - "section_marker": "studio/", + "project_key": "platform/ivory-sextant", + "display_name": "Ivory Sextant", + "path": "platform/ivory-sextant", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ivory-sextant", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Java" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-05-25T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4188, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1996, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 6, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 6, + "dependabot_medium": 1, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "manual-only", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/zephyr-bastion", - "repo_full_name": "demo-org/zephyr-bastion", - "display_name": "Zephyr Bastion", - "path": "lab/zephyr-bastion", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, - "stack": [ - "Perl" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 4325, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ivory-sextant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/amber-thicket", - "repo_full_name": "demo-org/amber-thicket", - "display_name": "Amber Thicket", - "path": "studio/amber-thicket", - "section_marker": "studio/", + "project_key": "platform/lumen-ferry", + "display_name": "Lumen Ferry", + "path": "platform/lumen-ferry", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/lumen-ferry", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "recent", - "archived": false, "stack": [ - "Dart", - "Flutter" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-23T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-05-25T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4462, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2407, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 6, + "medium": 0, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 1, + "dependabot_high": 6, + "dependabot_medium": 0, + "dependabot_low": 2, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 7 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/bramble-cistern", - "repo_full_name": "demo-org/bramble-cistern", - "display_name": "Bramble Cistern", - "path": "lab/bramble-cistern", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "R" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 4599, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": false, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/lumen-ferry", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/cobalt-wharf", - "repo_full_name": "demo-org/cobalt-wharf", - "display_name": "Cobalt Wharf", - "path": "studio/cobalt-wharf", - "section_marker": "studio/", - "has_git": true, + "project_key": "studio/amber-thicket", + "display_name": "Amber Thicket", + "path": "studio/amber-thicket", "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/amber-thicket", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Scala" + "Dart", + "Flutter" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-05-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4736, - "release_count": 0, + "last_meaningful_activity_at": "2026-05-25T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 4462, + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, - "doctor_gap": true, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4042,86 +9242,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/amber-thicket", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Dart, Flutter" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/dusk-pergola", - "repo_full_name": "demo-org/dusk-pergola", - "display_name": "Dusk Pergola", - "path": "lab/dusk-pergola", - "section_marker": "lab/", + "project_key": "studio/cobalt-wharf", + "display_name": "Cobalt Wharf", + "path": "studio/cobalt-wharf", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/cobalt-wharf", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "OCaml" + "Scala" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-05-25T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 4873, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 4736, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4145,84 +9529,268 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", + "legacy_status": "manual-only", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/cobalt-wharf", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Scala" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { "project_key": "studio/errant-fathom", - "repo_full_name": "demo-org/errant-fathom", "display_name": "Errant Fathom", "path": "studio/errant-fathom", - "section_marker": "studio/", - "has_git": true, "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/errant-fathom", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ "TypeScript" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, "readme_char_count": 5010, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4250,593 +9818,2133 @@ "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/errant-fathom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/foxglove-mast", - "repo_full_name": "demo-org/foxglove-mast", - "display_name": "Foxglove Mast", - "path": "lab/foxglove-mast", - "section_marker": "lab/", + "project_key": "studio/glacier-quill", + "display_name": "Glacier Quill", + "path": "studio/glacier-quill", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/glacier-quill", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Nim" + "Swift", + "SwiftUI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 5147, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-13T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1722, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 9, + "medium": 3, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "note": 0, + "warning": 0 + }, + "zero_findings": false + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 1, + "dependabot_high": 9, + "dependabot_medium": 3, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 1, + "secret_scanning_open": 0, + "open_high_critical": 10 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/glacier-quill", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift, SwiftUI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "archive/gossamer-ridge", - "repo_full_name": "demo-org/gossamer-ridge", - "display_name": "Gossamer Ridge", - "path": "archive/gossamer-ridge", - "section_marker": "archive/", + "project_key": "studio/harbor-lantern", + "display_name": "Harbor Lantern", + "path": "studio/harbor-lantern", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/harbor-lantern", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Python" + "TypeScript", + "React" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5284, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "last_meaningful_activity_at": "2026-05-25T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1859, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 6, + "medium": 1, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 6, + "dependabot_medium": 1, + "dependabot_low": 2, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/harbor-lantern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, React" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/hollow-tessera", - "repo_full_name": "demo-org/hollow-tessera", - "display_name": "Hollow Tessera", - "path": "archive/hollow-tessera", - "section_marker": "archive/", + "project_key": "studio/juniper-kiln", + "display_name": "Juniper Kiln", + "path": "studio/juniper-kiln", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/juniper-kiln", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "JavaScript" + "Kotlin" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5421, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-13T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2133, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 7, + "medium": 0, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 7, + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 7 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/juniper-kiln", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Kotlin" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/indigo-palisade", - "repo_full_name": "demo-org/indigo-palisade", - "display_name": "Indigo Palisade", - "path": "archive/indigo-palisade", - "section_marker": "archive/", + "project_key": "studio/kestrel-loom", + "display_name": "Kestrel Loom", + "path": "studio/kestrel-loom", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/kestrel-loom", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5558, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-05-25T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2270, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 9, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 9, + "dependabot_medium": 1, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 9 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/kestrel-loom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-05-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/jetty-marquee", - "repo_full_name": "demo-org/jetty-marquee", - "display_name": "Jetty Marquee", - "path": "archive/jetty-marquee", - "section_marker": "archive/", + "project_key": "studio/nimbus-charter", + "display_name": "Nimbus Charter", + "path": "studio/nimbus-charter", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/nimbus-charter", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Ruby" + "JavaScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 5695, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "decision-needed", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2681, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-15T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 6, + "medium": 2, + "low": 3 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 6, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/nimbus-charter", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/kindling-arbor", - "repo_full_name": "demo-org/kindling-arbor", - "display_name": "Kindling Arbor", - "path": "archive/kindling-arbor", - "section_marker": "archive/", + "project_key": "studio/rialto-pennant", + "display_name": "Rialto Pennant", + "path": "studio/rialto-pennant", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/rialto-pennant", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "C++" + "TypeScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5832, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3229, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, + "coverage_state": "stale", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "stale", + "source_produced_at": "2026-06-14T21:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-14T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "code_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-14T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-14T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + } + }, "dependabot_critical": null, "dependabot_high": null, "dependabot_medium": null, @@ -4850,83 +11958,275 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "manual-only", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-06-14T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/rialto-pennant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/lattice-bezel", - "repo_full_name": "demo-org/lattice-bezel", - "display_name": "Lattice Bezel", - "path": "archive/lattice-bezel", - "section_marker": "archive/", + "project_key": "studio/umbra-trellis", + "display_name": "Umbra Trellis", + "path": "studio/umbra-trellis", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/umbra-trellis", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Swift" + "Lua" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5969, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3640, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4946,87 +12246,272 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/umbra-trellis", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Lua" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/mica-turnstile", - "repo_full_name": "demo-org/mica-turnstile", - "display_name": "Mica Turnstile", - "path": "archive/mica-turnstile", - "section_marker": "archive/", + "project_key": "studio/wicker-obelisk", + "display_name": "Wicker Obelisk", + "path": "studio/wicker-obelisk", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/wicker-obelisk", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Rust" + "PHP" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 6106, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3914, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5050,84 +12535,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/wicker-obelisk", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "PHP" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/nocturne-spar", - "repo_full_name": "demo-org/nocturne-spar", - "display_name": "Nocturne Spar", - "path": "archive/nocturne-spar", - "section_marker": "archive/", + "project_key": "studio/yarrow-spindle", + "display_name": "Yarrow Spindle", + "path": "studio/yarrow-spindle", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/yarrow-spindle", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "TypeScript" + "Java" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-05T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 6243, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-07T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4188, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5151,34 +12822,238 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-15T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/yarrow-spindle", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-07T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Java" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] } ], "rollups": { "risk_tier_counts": { - "elevated": 16, - "moderate": 12, - "baseline": 4, - "deferred": 8 + "elevated": 10, + "moderate": 9, + "baseline": 10, + "deferred": 11 }, "security": { - "coverage_state": "partial", + "scanned_count": 10, + "unavailable_count": 30, "complete_repo_count": 10, "partial_repo_count": 6, "stale_count": 2, "unknown_count": 22, - "scanned_count": 10, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "dependabot_observed_count": 16, + "code_scanning_observed_count": 10, + "secret_scanning_observed_count": 10, + "dependabot_zero_finding_count": 0, + "code_scanning_zero_finding_count": 6, + "secret_scanning_zero_finding_count": 9, + "remote_default_branch_observed_count": 16, + "remote_default_branch_partial_count": 0, + "remote_default_branch_stale_count": 2, + "remote_default_branch_unavailable_count": 22, + "coverage_state": "partial", "repos_with_open_high_critical": 16, "total_open_high": 117, "total_open_critical": 5 }, "decision": { - "decision_needed_count": 3, - "default_attention_count": 10 + "decision_needed_count": 13, + "default_attention_count": 13 } } } \ No newline at end of file diff --git a/output/demo/portfolio-truth-history-03.json b/output/demo/portfolio-truth-history-03.json index b7acaca1..40e8636f 100644 --- a/output/demo/portfolio-truth-history-03.json +++ b/output/demo/portfolio-truth-history-03.json @@ -1,15 +1,98 @@ { "schema_version": "0.11.0", + "generated_at": "2026-06-22T22:09:43.833784+00:00", "derivation_policy_version": "portfolio_attention.v3", - "generated_at": "2026-06-20T22:50:13.825998+00:00", - "workspace_root": "/demo-workspace", - "producer": { - "repository": "demo-org/portfolio-auditor", - "checkout_role": "demo-fixture", - "worktree_clean": true, - "dirty_path_count": 0, - "verified_at": "2026-06-20T22:50:13.825998+00:00" + "producer": {}, + "inputs": { + "catalog": { + "source_id": "portfolio-catalog", + "sha256": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00" + }, + "workspace": { + "source_id": "projects-root", + "observed_at": "2026-06-22T22:09:43.833784+00:00" + }, + "notion": { + "mode": "unavailable", + "observed_at": null, + "carried_from_generated_at": null + }, + "github_security": { + "source_id": "github-security-coverage-receipt", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "produced_at": "2026-06-22T22:09:43.833784+00:00", + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 18, + "path": "/demo-workspace/github-security-coverage.json", + "receipt_id": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", + "content_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" + } + }, + "coverage": [ + { + "source": "workspace", + "state": "observed", + "project_count": 40 + }, + { + "source": "git", + "state": "observed", + "observed_count": 40, + "project_count": 40 + }, + { + "source": "github_security", + "state": "partial", + "scanned_count": 10, + "complete_repo_count": 10, + "partial_repo_count": 6, + "stale_count": 2, + "unknown_count": 22, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "provider_observed_counts": { + "dependabot": 16, + "code_scanning": 10, + "secret_scanning": 10 + }, + "provider_zero_finding_counts": { + "dependabot": 0, + "code_scanning": 6, + "secret_scanning": 9 + }, + "remote_default_branch_counts": { + "observed": 16, + "partial": 0, + "stale": 2, + "credential_unavailable": 0, + "forbidden": 0, + "not_found": 0, + "rate_limited": 0, + "transient_error": 0, + "malformed": 0, + "not_requested": 0, + "unknown": 22 + }, + "project_count": 40 + }, + { + "source": "notion", + "state": "unknown", + "observed_count": 0 + } + ], + "exclusions": { + "policy_version": "workspace_discovery.v2", + "counts": {} }, + "workspace_root": "/demo-workspace", "source_summary": { "workspace_root": "/demo-workspace", "project_count": 40, @@ -17,1318 +100,2509 @@ "catalog_warnings": [], "legacy_registry_rows": 40, "notion_context_rows": 0, - "notion_context_carried_forward": 0, + "notion_context_carried_forward": false, "context_quality_counts": { + "none": 8, "full": 8, "standard": 8, "minimum-viable": 8, - "boilerplate": 8, - "none": 8 + "boilerplate": 8 }, "activity_status_counts": { + "stale": 19, "active": 9, - "recent": 12, - "stale": 19 + "recent": 12 }, + "archived_count": 8, "attention_state_counts": { - "active-product": 3, - "decision-needed": 3, - "active-infra": 4, - "manual-only": 7, + "archived": 8, + "decision-needed": 13, "experiment": 8, - "parked": 7, - "archived": 8 + "parked": 6, + "manual-only": 5 }, - "archived_count": 8, "github_archived_count": 0, "duplicate_display_names": [], "unresolved_duplicate_display_names": [] }, "precedence_matrix": { - "identity": [ - "demo fixture" + "declared.owner": [ + "catalog_repo", + "catalog_group" + ], + "declared.team": [ + "catalog_repo", + "catalog_group" + ], + "declared.purpose": [ + "catalog_repo", + "catalog_group" + ], + "declared.lifecycle_state": [ + "catalog_repo", + "catalog_group" + ], + "declared.criticality": [ + "catalog_repo", + "catalog_group" + ], + "declared.review_cadence": [ + "catalog_repo", + "catalog_group" + ], + "declared.intended_disposition": [ + "catalog_repo", + "catalog_group" + ], + "declared.maturity_program": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.target_maturity": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.operating_path": [ + "normalized" + ], + "declared.category": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "declared.tool_provenance": [ + "catalog_repo", + "catalog_group", + "inference", + "legacy_registry" + ], + "declared.notes": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "derived.stack": [ + "workspace", + "legacy_registry" + ], + "derived.context_quality": [ + "workspace", + "catalog_repo", + "catalog_group" + ], + "derived.context_files": [ + "workspace" ], - "declared": [ - "demo fixture" + "derived.primary_context_file": [ + "workspace" ], - "derived": [ - "demo fixture" + "derived.project_summary_present": [ + "workspace" ], - "risk": [ - "demo fixture" + "derived.current_state_present": [ + "workspace" ], - "security": [ - "demo fixture receipt" + "derived.stack_present": [ + "workspace" + ], + "derived.run_instructions_present": [ + "workspace" + ], + "derived.known_risks_present": [ + "workspace" + ], + "derived.next_recommended_move_present": [ + "workspace" + ], + "derived.last_meaningful_activity_at": [ + "git", + "workspace" + ], + "derived.activity_status": [ + "derived" + ], + "derived.archived": [ + "derived" + ], + "derived.attention_state": [ + "derived" + ], + "derived.path_override": [ + "normalized" + ], + "derived.path_confidence": [ + "normalized" + ], + "derived.path_rationale": [ + "normalized" + ], + "derived.has_tests": [ + "workspace" + ], + "derived.has_ci": [ + "workspace" + ], + "derived.readme_char_count": [ + "workspace" ] }, - "coverage": [ - { - "source": "workspace", - "state": "observed", - "project_count": 40 - }, - { - "source": "github_security", - "state": "partial", - "project_count": 40, - "complete_repo_count": 10, - "partial_repo_count": 6, - "stale_count": 2, - "unknown_count": 22 - } - ], - "exclusions": [], - "inputs": [], "warnings": [], "projects": [ { "identity": { - "project_key": "flagship/aurora-ledger", - "repo_full_name": "demo-org/aurora-ledger", - "display_name": "Aurora Ledger", - "path": "flagship/aurora-ledger", - "section_marker": "flagship/", + "project_key": "archive/gossamer-ridge", + "display_name": "Gossamer Ridge", + "path": "archive/gossamer-ridge", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/gossamer-ridge", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "TypeScript", - "Next.js" + "Python" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-18T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 900, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5284, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "13 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 10, - "medium": 2, - "low": 3 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 10, - "dependabot_medium": 2, - "dependabot_low": 3, - "code_scanning_critical": 0, - "code_scanning_high": 2, - "secret_scanning_open": 0, - "open_high_critical": 13 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "flagship/basalt-relay", - "repo_full_name": "demo-org/basalt-relay", - "display_name": "Basalt Relay", - "path": "flagship/basalt-relay", - "section_marker": "flagship/", - "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", - "default_branch": "main" }, - "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", - "owner": "demo-operator", + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/gossamer-ridge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/hollow-tessera", + "display_name": "Hollow Tessera", + "path": "archive/hollow-tessera", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/hollow-tessera", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "Rust", - "Tauri 2" + "JavaScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-18T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1037, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5421, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "8 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 7, - "medium": 1, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 0, - "dependabot_high": 7, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 8 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/hollow-tessera", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/cinder-atlas", - "repo_full_name": "demo-org/cinder-atlas", - "display_name": "Cinder Atlas", - "path": "flagship/cinder-atlas", - "section_marker": "flagship/", + "project_key": "archive/indigo-palisade", + "display_name": "Indigo Palisade", + "path": "archive/indigo-palisade", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/indigo-palisade", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "FastAPI" + "Go" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-18T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1174, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is finish from explicit operating path." - }, - "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "10 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": false, - "context_risk": true, - "path_risk": true - }, - "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 2, - "high": 7, - "medium": 0, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 1 - }, - "zero_findings": false - } - }, - "dependabot_critical": 2, - "dependabot_high": 7, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 1, - "code_scanning_high": 0, - "secret_scanning_open": 1, - "open_high_critical": 10 + "has_ci": false, + "has_license": false, + "readme_char_count": 5558, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/indigo-palisade", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/dovetail-forge", - "repo_full_name": "demo-org/dovetail-forge", - "display_name": "Dovetail Forge", - "path": "platform/dovetail-forge", - "section_marker": "platform/", + "project_key": "archive/jetty-marquee", + "display_name": "Jetty Marquee", + "path": "archive/jetty-marquee", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/jetty-marquee", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-18T22:50:13.825998+00:00", - "has_tests": true, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1311, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 5695, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "6 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 6, - "medium": 2, - "low": 4 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/jetty-marquee", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 6, - "dependabot_medium": 2, - "dependabot_low": 4, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 6 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "platform/ember-conduit", - "repo_full_name": "demo-org/ember-conduit", - "display_name": "Ember Conduit", - "path": "platform/ember-conduit", - "section_marker": "platform/", + "project_key": "archive/kindling-arbor", + "display_name": "Kindling Arbor", + "path": "archive/kindling-arbor", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/kindling-arbor", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "C++" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-18T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1448, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5832, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "6 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 6, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/kindling-arbor", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 6, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 6 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C++" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/lattice-bezel", + "display_name": "Lattice Bezel", + "path": "archive/lattice-bezel", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/lattice-bezel", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "Swift" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": false, + "has_license": false, + "readme_char_count": 5969, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/lattice-bezel", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/fathom-beacon", - "repo_full_name": "demo-org/fathom-beacon", - "display_name": "Fathom Beacon", - "path": "platform/fathom-beacon", - "section_marker": "platform/", + "project_key": "archive/mica-turnstile", + "display_name": "Mica Turnstile", + "path": "archive/mica-turnstile", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/mica-turnstile", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-infra", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "Node" + "Rust" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-05-30T22:50:13.825998+00:00", - "has_tests": true, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1585, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 6106, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "4 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 4, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/mica-turnstile", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 4, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 4 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/glacier-quill", - "repo_full_name": "demo-org/glacier-quill", - "display_name": "Glacier Quill", - "path": "studio/glacier-quill", - "section_marker": "studio/", + "project_key": "archive/nocturne-spar", + "display_name": "Nocturne Spar", + "path": "archive/nocturne-spar", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/nocturne-spar", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Swift", - "SwiftUI" + "TypeScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-18T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1722, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 6243, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "10 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 8, - "medium": 3, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 8, - "dependabot_medium": 3, - "dependabot_low": 1, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 10 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/nocturne-spar", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/harbor-lantern", - "repo_full_name": "demo-org/harbor-lantern", - "display_name": "Harbor Lantern", - "path": "studio/harbor-lantern", - "section_marker": "studio/", + "project_key": "flagship/aurora-ledger", + "display_name": "Aurora Ledger", + "path": "flagship/aurora-ledger", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/aurora-ledger", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-product", - "activity_status": "recent", - "archived": false, "stack": [ "TypeScript", - "React" + "Next.js" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-30T22:50:13.825998+00:00", + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-20T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1859, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is operate from explicit operating path." + "readme_char_count": 900, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "5 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1337,68 +2611,68 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 5, - "medium": 1, - "low": 2 + "critical": 1, + "high": 10, + "medium": 2, + "low": 3 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 2, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1406,97 +2680,293 @@ "zero_findings": true } }, - "dependabot_critical": 0, - "dependabot_high": 5, - "dependabot_medium": 1, - "dependabot_low": 2, + "dependabot_critical": 1, + "dependabot_high": 10, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 2, "secret_scanning_open": 0, - "open_high_critical": 5 + "open_high_critical": 11 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "studio", + "legacy_context_quality": "full", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/aurora-ledger", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-20T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Next.js" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/ivory-sextant", - "repo_full_name": "demo-org/ivory-sextant", - "display_name": "Ivory Sextant", - "path": "platform/ivory-sextant", - "section_marker": "platform/", + "project_key": "flagship/basalt-relay", + "display_name": "Basalt Relay", + "path": "flagship/basalt-relay", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/basalt-relay", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Python" + "Rust", + "Tauri 2" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-05-30T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-20T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1996, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1037, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "5 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1505,26 +2975,26 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 5, + "high": 7, "medium": 1, "low": 0 }, @@ -1533,40 +3003,40 @@ "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 1, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1575,95 +3045,291 @@ } }, "dependabot_critical": 0, - "dependabot_high": 5, + "dependabot_high": 7, "dependabot_medium": 1, "dependabot_low": 0, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 1, "secret_scanning_open": 0, - "open_high_critical": 5 + "open_high_critical": 7 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/basalt-relay", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-20T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust, Tauri 2" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/juniper-kiln", - "repo_full_name": "demo-org/juniper-kiln", - "display_name": "Juniper Kiln", - "path": "studio/juniper-kiln", - "section_marker": "studio/", + "project_key": "flagship/cinder-atlas", + "display_name": "Cinder Atlas", + "path": "flagship/cinder-atlas", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/cinder-atlas", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Kotlin" + "Python", + "FastAPI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-18T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-20T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Finish from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2133, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1174, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "6 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1672,26 +3338,26 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 6, + "critical": 2, + "high": 7, "medium": 0, "low": 1 }, @@ -1700,137 +3366,335 @@ "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, + "critical": 1, "high": 0, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "open": 0 + "open": 1 }, - "zero_findings": true + "zero_findings": false } }, - "dependabot_critical": 0, - "dependabot_high": 6, + "dependabot_critical": 2, + "dependabot_high": 7, "dependabot_medium": 0, "dependabot_low": 1, - "code_scanning_critical": 0, + "code_scanning_critical": 1, "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 6 + "secret_scanning_open": 1, + "open_high_critical": 9 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "minimum-viable", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/cinder-atlas", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-20T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, FastAPI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/kestrel-loom", - "repo_full_name": "demo-org/kestrel-loom", - "display_name": "Kestrel Loom", - "path": "studio/kestrel-loom", - "section_marker": "studio/", + "project_key": "flagship/meridian-vault", + "display_name": "Meridian Vault", + "path": "flagship/meridian-vault", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/meridian-vault", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "recent", - "archived": false, "stack": [ - "Ruby" + "Python", + "Django" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-30T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-20T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2270, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "readme_char_count": 2544, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "8 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -1839,28 +3703,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, "high": 8, - "medium": 1, - "low": 0 + "medium": 4, + "low": 1 }, "zero_findings": false }, @@ -1877,7 +3741,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -1895,7 +3759,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -1903,256 +3767,1149 @@ }, "dependabot_critical": 0, "dependabot_high": 8, - "dependabot_medium": 1, - "dependabot_low": 0, + "dependabot_medium": 4, + "dependabot_low": 1, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 8 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "full", + "legacy_category": "flagship", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/meridian-vault", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-20T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, Django" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/bramble-cistern", + "display_name": "Bramble Cistern", + "path": "lab/bramble-cistern", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/bramble-cistern", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "R" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4599, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 8 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/bramble-cistern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "R" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/lumen-ferry", - "repo_full_name": "demo-org/lumen-ferry", - "display_name": "Lumen Ferry", - "path": "platform/lumen-ferry", - "section_marker": "platform/", + "project_key": "lab/dusk-pergola", + "display_name": "Dusk Pergola", + "path": "lab/dusk-pergola", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/dusk-pergola", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Go" + "OCaml" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-30T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 2407, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 4873, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "6 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", - "providers": { - "dependabot": { + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/dusk-pergola", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 5, - "medium": 0, - "low": 2 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" }, - "dependabot_critical": 1, - "dependabot_high": 5, - "dependabot_medium": 0, - "dependabot_low": 2, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "OCaml" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/foxglove-mast", + "display_name": "Foxglove Mast", + "path": "lab/foxglove-mast", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/foxglove-mast", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "Nim" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-01T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 5147, + "release_count": 0 + }, + "risk": { + "risk_tier": "elevated", + "risk_factors": [ + "weak-context-active", + "investigate-override", + "no-run-instructions" + ], + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 6 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", + "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "platform", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/foxglove-mast", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Nim" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/meridian-vault", - "repo_full_name": "demo-org/meridian-vault", - "display_name": "Meridian Vault", - "path": "flagship/meridian-vault", - "section_marker": "flagship/", + "project_key": "lab/onyx-placard", + "display_name": "Onyx Placard", + "path": "lab/onyx-placard", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/onyx-placard", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "Django" + "Elixir" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-18T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-01T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Experiment from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2544, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2818, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "8 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -2161,28 +4918,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 8, - "medium": 4, - "low": 1 + "high": 5, + "medium": 0, + "low": 0 }, "zero_findings": false }, @@ -2199,7 +4956,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2217,103 +4974,300 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 8, - "dependabot_medium": 4, - "dependabot_low": 1, + "dependabot_high": 5, + "dependabot_medium": 0, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 8 + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_context_quality": "minimum-viable", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/onyx-placard", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Elixir" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/nimbus-charter", - "repo_full_name": "demo-org/nimbus-charter", - "display_name": "Nimbus Charter", - "path": "studio/nimbus-charter", - "section_marker": "studio/", + "project_key": "lab/pallas-runner", + "display_name": "Pallas Runner", + "path": "lab/pallas-runner", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/pallas-runner", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "JavaScript" + "Rust" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-20T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 2681, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2955, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "5 open high/critical security alerts", - "no meaningful activity in the recent window" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, @@ -2322,28 +5276,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 5, - "medium": 2, - "low": 3 + "high": 6, + "medium": 1, + "low": 1 }, "zero_findings": false }, @@ -2360,7 +5314,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2378,434 +5332,1226 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-22T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 5, - "dependabot_medium": 2, - "dependabot_low": 3, + "dependabot_high": 6, + "dependabot_medium": 1, + "dependabot_low": 1, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 5 + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/pallas-runner", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-20T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/onyx-placard", - "repo_full_name": "demo-org/onyx-placard", - "display_name": "Onyx Placard", - "path": "lab/onyx-placard", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/quartz-signal", + "display_name": "Quartz Signal", + "path": "lab/quartz-signal", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/quartz-signal", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Elixir" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-30T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2818, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3092, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "5 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", + "coverage_state": "stale", "cohort_member": true, "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", + "receipt_state": "stale", + "source_produced_at": "2026-06-21T21:09:43.833784+00:00", "providers": { "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", + "observed_at": "2026-06-21T21:09:43.833784+00:00", "pagination_complete": true, - "counts": { - "critical": 0, - "high": 5, - "medium": 0, - "low": 0 - }, - "zero_findings": false + "counts": null, + "zero_findings": null }, "code_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-06-21T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null }, "secret_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-06-21T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null } }, - "dependabot_critical": 0, - "dependabot_high": 5, - "dependabot_medium": 0, - "dependabot_low": 0, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-06-21T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/quartz-signal", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/solstice-cairn", + "display_name": "Solstice Cairn", + "path": "lab/solstice-cairn", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/solstice-cairn", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "C" + ], + "context_quality": "minimum-viable", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-01T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3366, + "release_count": 0 + }, + "risk": { + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 5 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", + "legacy_status": "manual-only", "legacy_context_quality": "minimum-viable", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/solstice-cairn", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/pallas-runner", - "repo_full_name": "demo-org/pallas-runner", - "display_name": "Pallas Runner", - "path": "lab/pallas-runner", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/tabard-anvil", + "display_name": "Tabard Anvil", + "path": "lab/tabard-anvil", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/tabard-anvil", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "Zig" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-18T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-01T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 2955, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3503, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "6 open high/critical security alerts", - "no CI workflow", - "thin project context" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": true, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", - "providers": { - "dependabot": { + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/tabard-anvil", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 6, - "medium": 1, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-20T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Zig" }, - "dependabot_critical": 0, - "dependabot_high": 6, - "dependabot_medium": 1, - "dependabot_low": 1, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 6 + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "lab/quartz-signal", - "repo_full_name": "demo-org/quartz-signal", - "display_name": "Quartz Signal", - "path": "lab/quartz-signal", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/vellum-compass", + "display_name": "Vellum Compass", + "path": "lab/vellum-compass", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/vellum-compass", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Python" + "Haskell" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 3092, - "release_count": 0, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 3777, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", - "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2820,93 +6566,281 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", + "legacy_status": "active", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/vellum-compass", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Haskell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/rialto-pennant", - "repo_full_name": "demo-org/rialto-pennant", - "display_name": "Rialto Pennant", - "path": "studio/rialto-pennant", - "section_marker": "studio/", + "project_key": "lab/xenon-parapet", + "display_name": "Xenon Parapet", + "path": "lab/xenon-parapet", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/xenon-parapet", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, "stack": [ - "TypeScript" + "Shell" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-01T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3229, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4051, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-06-20T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2922,83 +6856,268 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/xenon-parapet", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Shell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/solstice-cairn", - "repo_full_name": "demo-org/solstice-cairn", - "display_name": "Solstice Cairn", - "path": "lab/solstice-cairn", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/zephyr-bastion", + "display_name": "Zephyr Bastion", + "path": "lab/zephyr-bastion", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/zephyr-bastion", "default_branch": "main" }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", + "declared": { "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "C" + "Perl" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-30T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": false, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3366, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4325, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3023,101 +7142,357 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "minimum-viable", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/zephyr-bastion", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Perl" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/tabard-anvil", - "repo_full_name": "demo-org/tabard-anvil", - "display_name": "Tabard Anvil", - "path": "lab/tabard-anvil", - "section_marker": "lab/", + "project_key": "platform/dovetail-forge", + "display_name": "Dovetail Forge", + "path": "platform/dovetail-forge", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/dovetail-forge", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Zig" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-30T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-20T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": false, + "has_ci": true, "has_license": true, - "readme_char_count": 3503, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1311, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 6, + "medium": 2, + "low": 4 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 6, + "dependabot_medium": 2, + "dependabot_low": 4, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", @@ -3125,900 +7500,1725 @@ "notion_current_state": "", "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/dovetail-forge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-20T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/umbra-trellis", - "repo_full_name": "demo-org/umbra-trellis", - "display_name": "Umbra Trellis", - "path": "studio/umbra-trellis", - "section_marker": "studio/", + "project_key": "platform/ember-conduit", + "display_name": "Ember Conduit", + "path": "platform/ember-conduit", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ember-conduit", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Lua" + "Rust" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-20T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3640, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1448, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 6, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 6, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "active", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/vellum-compass", - "repo_full_name": "demo-org/vellum-compass", - "display_name": "Vellum Compass", - "path": "lab/vellum-compass", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "Haskell" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 3777, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ember-conduit", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-20T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/wicker-obelisk", - "repo_full_name": "demo-org/wicker-obelisk", - "display_name": "Wicker Obelisk", - "path": "studio/wicker-obelisk", - "section_marker": "studio/", + "project_key": "platform/fathom-beacon", + "display_name": "Fathom Beacon", + "path": "platform/fathom-beacon", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/fathom-beacon", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "PHP" + "TypeScript", + "Node" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-01T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3914, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1585, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 4, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 4, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/xenon-parapet", - "repo_full_name": "demo-org/xenon-parapet", - "display_name": "Xenon Parapet", - "path": "lab/xenon-parapet", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, - "stack": [ - "Shell" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-30T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4051, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/fathom-beacon", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Node" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/yarrow-spindle", - "repo_full_name": "demo-org/yarrow-spindle", - "display_name": "Yarrow Spindle", - "path": "studio/yarrow-spindle", - "section_marker": "studio/", + "project_key": "platform/ivory-sextant", + "display_name": "Ivory Sextant", + "path": "platform/ivory-sextant", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ivory-sextant", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Java" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-01T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4188, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1996, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 5, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 5, + "dependabot_medium": 1, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "manual-only", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/zephyr-bastion", - "repo_full_name": "demo-org/zephyr-bastion", - "display_name": "Zephyr Bastion", - "path": "lab/zephyr-bastion", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, - "stack": [ - "Perl" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 4325, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ivory-sextant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/amber-thicket", - "repo_full_name": "demo-org/amber-thicket", - "display_name": "Amber Thicket", - "path": "studio/amber-thicket", - "section_marker": "studio/", + "project_key": "platform/lumen-ferry", + "display_name": "Lumen Ferry", + "path": "platform/lumen-ferry", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/lumen-ferry", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "recent", - "archived": false, "stack": [ - "Dart", - "Flutter" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-30T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-01T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4462, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2407, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 5, + "medium": 0, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 1, + "dependabot_high": 5, + "dependabot_medium": 0, + "dependabot_low": 2, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/bramble-cistern", - "repo_full_name": "demo-org/bramble-cistern", - "display_name": "Bramble Cistern", - "path": "lab/bramble-cistern", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "R" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 4599, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": false, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/lumen-ferry", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/cobalt-wharf", - "repo_full_name": "demo-org/cobalt-wharf", - "display_name": "Cobalt Wharf", - "path": "studio/cobalt-wharf", - "section_marker": "studio/", - "has_git": true, + "project_key": "studio/amber-thicket", + "display_name": "Amber Thicket", + "path": "studio/amber-thicket", "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/amber-thicket", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Scala" + "Dart", + "Flutter" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-05-30T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4736, - "release_count": 0, + "last_meaningful_activity_at": "2026-06-01T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 4462, + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, - "doctor_gap": true, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4042,86 +9242,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/amber-thicket", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Dart, Flutter" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/dusk-pergola", - "repo_full_name": "demo-org/dusk-pergola", - "display_name": "Dusk Pergola", - "path": "lab/dusk-pergola", - "section_marker": "lab/", + "project_key": "studio/cobalt-wharf", + "display_name": "Cobalt Wharf", + "path": "studio/cobalt-wharf", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/cobalt-wharf", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "OCaml" + "Scala" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-01T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 4873, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 4736, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4145,84 +9529,268 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", + "legacy_status": "manual-only", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/cobalt-wharf", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Scala" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { "project_key": "studio/errant-fathom", - "repo_full_name": "demo-org/errant-fathom", "display_name": "Errant Fathom", "path": "studio/errant-fathom", - "section_marker": "studio/", - "has_git": true, "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/errant-fathom", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ "TypeScript" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, "readme_char_count": 5010, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4250,593 +9818,2133 @@ "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/errant-fathom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/foxglove-mast", - "repo_full_name": "demo-org/foxglove-mast", - "display_name": "Foxglove Mast", - "path": "lab/foxglove-mast", - "section_marker": "lab/", + "project_key": "studio/glacier-quill", + "display_name": "Glacier Quill", + "path": "studio/glacier-quill", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/glacier-quill", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Nim" + "Swift", + "SwiftUI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-05-30T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 5147, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-20T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1722, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 8, + "medium": 3, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "note": 0, + "warning": 0 + }, + "zero_findings": false + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 1, + "dependabot_high": 8, + "dependabot_medium": 3, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 1, + "secret_scanning_open": 0, + "open_high_critical": 9 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/glacier-quill", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-20T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift, SwiftUI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "archive/gossamer-ridge", - "repo_full_name": "demo-org/gossamer-ridge", - "display_name": "Gossamer Ridge", - "path": "archive/gossamer-ridge", - "section_marker": "archive/", + "project_key": "studio/harbor-lantern", + "display_name": "Harbor Lantern", + "path": "studio/harbor-lantern", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/harbor-lantern", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Python" + "TypeScript", + "React" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5284, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "last_meaningful_activity_at": "2026-06-01T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1859, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 5, + "medium": 1, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 5, + "dependabot_medium": 1, + "dependabot_low": 2, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/harbor-lantern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, React" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/hollow-tessera", - "repo_full_name": "demo-org/hollow-tessera", - "display_name": "Hollow Tessera", - "path": "archive/hollow-tessera", - "section_marker": "archive/", + "project_key": "studio/juniper-kiln", + "display_name": "Juniper Kiln", + "path": "studio/juniper-kiln", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/juniper-kiln", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "JavaScript" + "Kotlin" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5421, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-20T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2133, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 6, + "medium": 0, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 6, + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/juniper-kiln", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-20T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Kotlin" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/indigo-palisade", - "repo_full_name": "demo-org/indigo-palisade", - "display_name": "Indigo Palisade", - "path": "archive/indigo-palisade", - "section_marker": "archive/", + "project_key": "studio/kestrel-loom", + "display_name": "Kestrel Loom", + "path": "studio/kestrel-loom", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/kestrel-loom", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5558, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-01T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2270, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 8, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 8, + "dependabot_medium": 1, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 8 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/kestrel-loom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/jetty-marquee", - "repo_full_name": "demo-org/jetty-marquee", - "display_name": "Jetty Marquee", - "path": "archive/jetty-marquee", - "section_marker": "archive/", + "project_key": "studio/nimbus-charter", + "display_name": "Nimbus Charter", + "path": "studio/nimbus-charter", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/nimbus-charter", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Ruby" + "JavaScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 5695, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "decision-needed", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2681, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-22T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 5, + "medium": 2, + "low": 3 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 5, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/nimbus-charter", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/kindling-arbor", - "repo_full_name": "demo-org/kindling-arbor", - "display_name": "Kindling Arbor", - "path": "archive/kindling-arbor", - "section_marker": "archive/", + "project_key": "studio/rialto-pennant", + "display_name": "Rialto Pennant", + "path": "studio/rialto-pennant", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/rialto-pennant", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "C++" + "TypeScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5832, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3229, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, + "coverage_state": "stale", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "stale", + "source_produced_at": "2026-06-21T21:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-21T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "code_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-21T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-21T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + } + }, "dependabot_critical": null, "dependabot_high": null, "dependabot_medium": null, @@ -4850,83 +11958,275 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "manual-only", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-06-21T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/rialto-pennant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/lattice-bezel", - "repo_full_name": "demo-org/lattice-bezel", - "display_name": "Lattice Bezel", - "path": "archive/lattice-bezel", - "section_marker": "archive/", + "project_key": "studio/umbra-trellis", + "display_name": "Umbra Trellis", + "path": "studio/umbra-trellis", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/umbra-trellis", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Swift" + "Lua" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5969, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3640, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4946,87 +12246,272 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/umbra-trellis", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Lua" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/mica-turnstile", - "repo_full_name": "demo-org/mica-turnstile", - "display_name": "Mica Turnstile", - "path": "archive/mica-turnstile", - "section_marker": "archive/", + "project_key": "studio/wicker-obelisk", + "display_name": "Wicker Obelisk", + "path": "studio/wicker-obelisk", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/wicker-obelisk", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Rust" + "PHP" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 6106, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3914, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5050,84 +12535,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/wicker-obelisk", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "PHP" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/nocturne-spar", - "repo_full_name": "demo-org/nocturne-spar", - "display_name": "Nocturne Spar", - "path": "archive/nocturne-spar", - "section_marker": "archive/", + "project_key": "studio/yarrow-spindle", + "display_name": "Yarrow Spindle", + "path": "studio/yarrow-spindle", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/yarrow-spindle", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "TypeScript" + "Java" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-12T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 6243, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-14T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4188, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5151,34 +12822,238 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-22T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/yarrow-spindle", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-14T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Java" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] } ], "rollups": { "risk_tier_counts": { - "elevated": 16, - "moderate": 12, - "baseline": 4, - "deferred": 8 + "elevated": 10, + "moderate": 9, + "baseline": 10, + "deferred": 11 }, "security": { - "coverage_state": "partial", + "scanned_count": 10, + "unavailable_count": 30, "complete_repo_count": 10, "partial_repo_count": 6, "stale_count": 2, "unknown_count": 22, - "scanned_count": 10, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "dependabot_observed_count": 16, + "code_scanning_observed_count": 10, + "secret_scanning_observed_count": 10, + "dependabot_zero_finding_count": 0, + "code_scanning_zero_finding_count": 6, + "secret_scanning_zero_finding_count": 9, + "remote_default_branch_observed_count": 16, + "remote_default_branch_partial_count": 0, + "remote_default_branch_stale_count": 2, + "remote_default_branch_unavailable_count": 22, + "coverage_state": "partial", "repos_with_open_high_critical": 16, "total_open_high": 101, "total_open_critical": 5 }, "decision": { - "decision_needed_count": 3, - "default_attention_count": 10 + "decision_needed_count": 13, + "default_attention_count": 13 } } } \ No newline at end of file diff --git a/output/demo/portfolio-truth-history-04.json b/output/demo/portfolio-truth-history-04.json index 270aed53..5c91bd45 100644 --- a/output/demo/portfolio-truth-history-04.json +++ b/output/demo/portfolio-truth-history-04.json @@ -1,15 +1,98 @@ { "schema_version": "0.11.0", + "generated_at": "2026-06-29T22:09:43.833784+00:00", "derivation_policy_version": "portfolio_attention.v3", - "generated_at": "2026-06-27T22:50:13.825998+00:00", - "workspace_root": "/demo-workspace", - "producer": { - "repository": "demo-org/portfolio-auditor", - "checkout_role": "demo-fixture", - "worktree_clean": true, - "dirty_path_count": 0, - "verified_at": "2026-06-27T22:50:13.825998+00:00" + "producer": {}, + "inputs": { + "catalog": { + "source_id": "portfolio-catalog", + "sha256": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00" + }, + "workspace": { + "source_id": "projects-root", + "observed_at": "2026-06-29T22:09:43.833784+00:00" + }, + "notion": { + "mode": "unavailable", + "observed_at": null, + "carried_from_generated_at": null + }, + "github_security": { + "source_id": "github-security-coverage-receipt", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "produced_at": "2026-06-29T22:09:43.833784+00:00", + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 18, + "path": "/demo-workspace/github-security-coverage.json", + "receipt_id": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", + "content_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" + } + }, + "coverage": [ + { + "source": "workspace", + "state": "observed", + "project_count": 40 + }, + { + "source": "git", + "state": "observed", + "observed_count": 40, + "project_count": 40 + }, + { + "source": "github_security", + "state": "partial", + "scanned_count": 10, + "complete_repo_count": 10, + "partial_repo_count": 6, + "stale_count": 2, + "unknown_count": 22, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "provider_observed_counts": { + "dependabot": 16, + "code_scanning": 10, + "secret_scanning": 10 + }, + "provider_zero_finding_counts": { + "dependabot": 0, + "code_scanning": 6, + "secret_scanning": 9 + }, + "remote_default_branch_counts": { + "observed": 16, + "partial": 0, + "stale": 2, + "credential_unavailable": 0, + "forbidden": 0, + "not_found": 0, + "rate_limited": 0, + "transient_error": 0, + "malformed": 0, + "not_requested": 0, + "unknown": 22 + }, + "project_count": 40 + }, + { + "source": "notion", + "state": "unknown", + "observed_count": 0 + } + ], + "exclusions": { + "policy_version": "workspace_discovery.v2", + "counts": {} }, + "workspace_root": "/demo-workspace", "source_summary": { "workspace_root": "/demo-workspace", "project_count": 40, @@ -17,1318 +100,2509 @@ "catalog_warnings": [], "legacy_registry_rows": 40, "notion_context_rows": 0, - "notion_context_carried_forward": 0, + "notion_context_carried_forward": false, "context_quality_counts": { + "none": 8, "full": 8, "standard": 8, "minimum-viable": 8, - "boilerplate": 8, - "none": 8 + "boilerplate": 8 }, "activity_status_counts": { + "stale": 19, "active": 9, - "recent": 12, - "stale": 19 + "recent": 12 }, + "archived_count": 8, "attention_state_counts": { - "active-product": 3, - "decision-needed": 3, - "active-infra": 4, - "manual-only": 7, + "archived": 8, + "decision-needed": 13, "experiment": 8, - "parked": 7, - "archived": 8 + "parked": 6, + "manual-only": 5 }, - "archived_count": 8, "github_archived_count": 0, "duplicate_display_names": [], "unresolved_duplicate_display_names": [] }, "precedence_matrix": { - "identity": [ - "demo fixture" + "declared.owner": [ + "catalog_repo", + "catalog_group" + ], + "declared.team": [ + "catalog_repo", + "catalog_group" + ], + "declared.purpose": [ + "catalog_repo", + "catalog_group" + ], + "declared.lifecycle_state": [ + "catalog_repo", + "catalog_group" + ], + "declared.criticality": [ + "catalog_repo", + "catalog_group" + ], + "declared.review_cadence": [ + "catalog_repo", + "catalog_group" + ], + "declared.intended_disposition": [ + "catalog_repo", + "catalog_group" + ], + "declared.maturity_program": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.target_maturity": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.operating_path": [ + "normalized" + ], + "declared.category": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "declared.tool_provenance": [ + "catalog_repo", + "catalog_group", + "inference", + "legacy_registry" + ], + "declared.notes": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "derived.stack": [ + "workspace", + "legacy_registry" + ], + "derived.context_quality": [ + "workspace", + "catalog_repo", + "catalog_group" + ], + "derived.context_files": [ + "workspace" ], - "declared": [ - "demo fixture" + "derived.primary_context_file": [ + "workspace" ], - "derived": [ - "demo fixture" + "derived.project_summary_present": [ + "workspace" ], - "risk": [ - "demo fixture" + "derived.current_state_present": [ + "workspace" ], - "security": [ - "demo fixture receipt" + "derived.stack_present": [ + "workspace" + ], + "derived.run_instructions_present": [ + "workspace" + ], + "derived.known_risks_present": [ + "workspace" + ], + "derived.next_recommended_move_present": [ + "workspace" + ], + "derived.last_meaningful_activity_at": [ + "git", + "workspace" + ], + "derived.activity_status": [ + "derived" + ], + "derived.archived": [ + "derived" + ], + "derived.attention_state": [ + "derived" + ], + "derived.path_override": [ + "normalized" + ], + "derived.path_confidence": [ + "normalized" + ], + "derived.path_rationale": [ + "normalized" + ], + "derived.has_tests": [ + "workspace" + ], + "derived.has_ci": [ + "workspace" + ], + "derived.readme_char_count": [ + "workspace" ] }, - "coverage": [ - { - "source": "workspace", - "state": "observed", - "project_count": 40 - }, - { - "source": "github_security", - "state": "partial", - "project_count": 40, - "complete_repo_count": 10, - "partial_repo_count": 6, - "stale_count": 2, - "unknown_count": 22 - } - ], - "exclusions": [], - "inputs": [], "warnings": [], "projects": [ { "identity": { - "project_key": "flagship/aurora-ledger", - "repo_full_name": "demo-org/aurora-ledger", - "display_name": "Aurora Ledger", - "path": "flagship/aurora-ledger", - "section_marker": "flagship/", + "project_key": "archive/gossamer-ridge", + "display_name": "Gossamer Ridge", + "path": "archive/gossamer-ridge", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/gossamer-ridge", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "TypeScript", - "Next.js" + "Python" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-25T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 900, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5284, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "12 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 9, - "medium": 2, - "low": 3 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 9, - "dependabot_medium": 2, - "dependabot_low": 3, - "code_scanning_critical": 0, - "code_scanning_high": 2, - "secret_scanning_open": 0, - "open_high_critical": 12 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "flagship/basalt-relay", - "repo_full_name": "demo-org/basalt-relay", - "display_name": "Basalt Relay", - "path": "flagship/basalt-relay", - "section_marker": "flagship/", - "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", - "default_branch": "main" }, - "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", - "owner": "demo-operator", + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/gossamer-ridge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/hollow-tessera", + "display_name": "Hollow Tessera", + "path": "archive/hollow-tessera", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/hollow-tessera", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "Rust", - "Tauri 2" + "JavaScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-25T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1037, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5421, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "7 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 6, - "medium": 1, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 0, - "dependabot_high": 6, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 7 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/hollow-tessera", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/cinder-atlas", - "repo_full_name": "demo-org/cinder-atlas", - "display_name": "Cinder Atlas", - "path": "flagship/cinder-atlas", - "section_marker": "flagship/", + "project_key": "archive/indigo-palisade", + "display_name": "Indigo Palisade", + "path": "archive/indigo-palisade", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/indigo-palisade", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "FastAPI" + "Go" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-25T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1174, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is finish from explicit operating path." - }, - "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "9 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": false, - "context_risk": true, - "path_risk": true - }, - "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 2, - "high": 6, - "medium": 0, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 1 - }, - "zero_findings": false - } - }, - "dependabot_critical": 2, - "dependabot_high": 6, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 1, - "code_scanning_high": 0, - "secret_scanning_open": 1, - "open_high_critical": 9 + "has_ci": false, + "has_license": false, + "readme_char_count": 5558, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/indigo-palisade", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/dovetail-forge", - "repo_full_name": "demo-org/dovetail-forge", - "display_name": "Dovetail Forge", - "path": "platform/dovetail-forge", - "section_marker": "platform/", + "project_key": "archive/jetty-marquee", + "display_name": "Jetty Marquee", + "path": "archive/jetty-marquee", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/jetty-marquee", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-25T22:50:13.825998+00:00", - "has_tests": true, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1311, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 5695, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "5 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 5, - "medium": 2, - "low": 4 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/jetty-marquee", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 5, - "dependabot_medium": 2, - "dependabot_low": 4, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 5 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "platform/ember-conduit", - "repo_full_name": "demo-org/ember-conduit", - "display_name": "Ember Conduit", - "path": "platform/ember-conduit", - "section_marker": "platform/", + "project_key": "archive/kindling-arbor", + "display_name": "Kindling Arbor", + "path": "archive/kindling-arbor", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/kindling-arbor", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "C++" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-25T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1448, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5832, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "5 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 5, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/kindling-arbor", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 5, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 5 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C++" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/lattice-bezel", + "display_name": "Lattice Bezel", + "path": "archive/lattice-bezel", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/lattice-bezel", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "Swift" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": false, + "has_license": false, + "readme_char_count": 5969, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/lattice-bezel", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/fathom-beacon", - "repo_full_name": "demo-org/fathom-beacon", - "display_name": "Fathom Beacon", - "path": "platform/fathom-beacon", - "section_marker": "platform/", + "project_key": "archive/mica-turnstile", + "display_name": "Mica Turnstile", + "path": "archive/mica-turnstile", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/mica-turnstile", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-infra", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "Node" + "Rust" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-06T22:50:13.825998+00:00", - "has_tests": true, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1585, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 6106, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "3 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 3, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/mica-turnstile", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 3, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 3 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/glacier-quill", - "repo_full_name": "demo-org/glacier-quill", - "display_name": "Glacier Quill", - "path": "studio/glacier-quill", - "section_marker": "studio/", + "project_key": "archive/nocturne-spar", + "display_name": "Nocturne Spar", + "path": "archive/nocturne-spar", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/nocturne-spar", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Swift", - "SwiftUI" + "TypeScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-25T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1722, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 6243, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "9 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 7, - "medium": 3, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 7, - "dependabot_medium": 3, - "dependabot_low": 1, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 9 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/nocturne-spar", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/harbor-lantern", - "repo_full_name": "demo-org/harbor-lantern", - "display_name": "Harbor Lantern", - "path": "studio/harbor-lantern", - "section_marker": "studio/", + "project_key": "flagship/aurora-ledger", + "display_name": "Aurora Ledger", + "path": "flagship/aurora-ledger", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/aurora-ledger", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-product", - "activity_status": "recent", - "archived": false, "stack": [ "TypeScript", - "React" + "Next.js" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-06T22:50:13.825998+00:00", + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-27T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1859, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is operate from explicit operating path." + "readme_char_count": 900, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "4 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1337,68 +2611,68 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 4, - "medium": 1, - "low": 2 + "critical": 1, + "high": 9, + "medium": 2, + "low": 3 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 2, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1406,97 +2680,293 @@ "zero_findings": true } }, - "dependabot_critical": 0, - "dependabot_high": 4, - "dependabot_medium": 1, - "dependabot_low": 2, + "dependabot_critical": 1, + "dependabot_high": 9, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 2, "secret_scanning_open": 0, - "open_high_critical": 4 + "open_high_critical": 10 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "studio", + "legacy_context_quality": "full", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/aurora-ledger", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-27T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Next.js" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/ivory-sextant", - "repo_full_name": "demo-org/ivory-sextant", - "display_name": "Ivory Sextant", - "path": "platform/ivory-sextant", - "section_marker": "platform/", + "project_key": "flagship/basalt-relay", + "display_name": "Basalt Relay", + "path": "flagship/basalt-relay", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/basalt-relay", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Python" + "Rust", + "Tauri 2" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-06T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-27T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1996, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1037, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "4 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1505,26 +2975,26 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 4, + "high": 6, "medium": 1, "low": 0 }, @@ -1533,40 +3003,40 @@ "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 1, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1575,95 +3045,291 @@ } }, "dependabot_critical": 0, - "dependabot_high": 4, + "dependabot_high": 6, "dependabot_medium": 1, "dependabot_low": 0, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 1, "secret_scanning_open": 0, - "open_high_critical": 4 + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/basalt-relay", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-27T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust, Tauri 2" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/juniper-kiln", - "repo_full_name": "demo-org/juniper-kiln", - "display_name": "Juniper Kiln", - "path": "studio/juniper-kiln", - "section_marker": "studio/", + "project_key": "flagship/cinder-atlas", + "display_name": "Cinder Atlas", + "path": "flagship/cinder-atlas", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/cinder-atlas", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Kotlin" + "Python", + "FastAPI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-25T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-27T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Finish from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2133, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1174, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "5 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1672,26 +3338,26 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 5, + "critical": 2, + "high": 6, "medium": 0, "low": 1 }, @@ -1700,137 +3366,335 @@ "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, + "critical": 1, "high": 0, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "open": 0 + "open": 1 }, - "zero_findings": true + "zero_findings": false } }, - "dependabot_critical": 0, - "dependabot_high": 5, + "dependabot_critical": 2, + "dependabot_high": 6, "dependabot_medium": 0, "dependabot_low": 1, - "code_scanning_critical": 0, + "code_scanning_critical": 1, "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 5 + "secret_scanning_open": 1, + "open_high_critical": 8 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "minimum-viable", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/cinder-atlas", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-27T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, FastAPI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/kestrel-loom", - "repo_full_name": "demo-org/kestrel-loom", - "display_name": "Kestrel Loom", - "path": "studio/kestrel-loom", - "section_marker": "studio/", + "project_key": "flagship/meridian-vault", + "display_name": "Meridian Vault", + "path": "flagship/meridian-vault", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/meridian-vault", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "recent", - "archived": false, "stack": [ - "Ruby" + "Python", + "Django" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-06T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-27T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2270, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "readme_char_count": 2544, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "7 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -1839,28 +3703,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, "high": 7, - "medium": 1, - "low": 0 + "medium": 4, + "low": 1 }, "zero_findings": false }, @@ -1877,7 +3741,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -1895,7 +3759,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -1903,256 +3767,1149 @@ }, "dependabot_critical": 0, "dependabot_high": 7, - "dependabot_medium": 1, - "dependabot_low": 0, + "dependabot_medium": 4, + "dependabot_low": 1, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 7 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "full", + "legacy_category": "flagship", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/meridian-vault", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-27T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, Django" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/bramble-cistern", + "display_name": "Bramble Cistern", + "path": "lab/bramble-cistern", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/bramble-cistern", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "R" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4599, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 7 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/bramble-cistern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "R" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/lumen-ferry", - "repo_full_name": "demo-org/lumen-ferry", - "display_name": "Lumen Ferry", - "path": "platform/lumen-ferry", - "section_marker": "platform/", + "project_key": "lab/dusk-pergola", + "display_name": "Dusk Pergola", + "path": "lab/dusk-pergola", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/dusk-pergola", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Go" + "OCaml" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-06T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 2407, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 4873, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "5 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", - "providers": { - "dependabot": { + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/dusk-pergola", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 4, - "medium": 0, - "low": 2 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" }, - "dependabot_critical": 1, - "dependabot_high": 4, - "dependabot_medium": 0, - "dependabot_low": 2, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "OCaml" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/foxglove-mast", + "display_name": "Foxglove Mast", + "path": "lab/foxglove-mast", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/foxglove-mast", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "Nim" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-08T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 5147, + "release_count": 0 + }, + "risk": { + "risk_tier": "elevated", + "risk_factors": [ + "weak-context-active", + "investigate-override", + "no-run-instructions" + ], + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 5 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", + "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "platform", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/foxglove-mast", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-08T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Nim" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/meridian-vault", - "repo_full_name": "demo-org/meridian-vault", - "display_name": "Meridian Vault", - "path": "flagship/meridian-vault", - "section_marker": "flagship/", + "project_key": "lab/onyx-placard", + "display_name": "Onyx Placard", + "path": "lab/onyx-placard", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/onyx-placard", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "Django" + "Elixir" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-25T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-08T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Experiment from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2544, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2818, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "7 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -2161,28 +4918,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 7, - "medium": 4, - "low": 1 + "high": 4, + "medium": 0, + "low": 0 }, "zero_findings": false }, @@ -2199,7 +4956,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2217,103 +4974,300 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 7, - "dependabot_medium": 4, - "dependabot_low": 1, + "dependabot_high": 4, + "dependabot_medium": 0, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 7 + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_context_quality": "minimum-viable", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/onyx-placard", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-08T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Elixir" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/nimbus-charter", - "repo_full_name": "demo-org/nimbus-charter", - "display_name": "Nimbus Charter", - "path": "studio/nimbus-charter", - "section_marker": "studio/", + "project_key": "lab/pallas-runner", + "display_name": "Pallas Runner", + "path": "lab/pallas-runner", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/pallas-runner", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "JavaScript" + "Rust" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-27T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 2681, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2955, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "4 open high/critical security alerts", - "no meaningful activity in the recent window" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, @@ -2322,28 +5276,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 4, - "medium": 2, - "low": 3 + "high": 5, + "medium": 1, + "low": 1 }, "zero_findings": false }, @@ -2360,7 +5314,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2378,434 +5332,1226 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-29T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 4, - "dependabot_medium": 2, - "dependabot_low": 3, + "dependabot_high": 5, + "dependabot_medium": 1, + "dependabot_low": 1, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 4 + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/pallas-runner", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-27T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/onyx-placard", - "repo_full_name": "demo-org/onyx-placard", - "display_name": "Onyx Placard", - "path": "lab/onyx-placard", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/quartz-signal", + "display_name": "Quartz Signal", + "path": "lab/quartz-signal", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/quartz-signal", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Elixir" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-06T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2818, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3092, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "4 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", + "coverage_state": "stale", "cohort_member": true, "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", + "receipt_state": "stale", + "source_produced_at": "2026-06-28T21:09:43.833784+00:00", "providers": { "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", + "observed_at": "2026-06-28T21:09:43.833784+00:00", "pagination_complete": true, - "counts": { - "critical": 0, - "high": 4, - "medium": 0, - "low": 0 - }, - "zero_findings": false + "counts": null, + "zero_findings": null }, "code_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-06-28T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null }, "secret_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-06-28T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null } }, - "dependabot_critical": 0, - "dependabot_high": 4, - "dependabot_medium": 0, - "dependabot_low": 0, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-06-28T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/quartz-signal", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/solstice-cairn", + "display_name": "Solstice Cairn", + "path": "lab/solstice-cairn", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/solstice-cairn", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "C" + ], + "context_quality": "minimum-viable", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-08T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3366, + "release_count": 0 + }, + "risk": { + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 4 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", + "legacy_status": "manual-only", "legacy_context_quality": "minimum-viable", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/solstice-cairn", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-08T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/pallas-runner", - "repo_full_name": "demo-org/pallas-runner", - "display_name": "Pallas Runner", - "path": "lab/pallas-runner", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/tabard-anvil", + "display_name": "Tabard Anvil", + "path": "lab/tabard-anvil", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/tabard-anvil", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "Zig" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-25T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-08T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 2955, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3503, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "5 open high/critical security alerts", - "no CI workflow", - "thin project context" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": true, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", - "providers": { - "dependabot": { + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/tabard-anvil", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 5, - "medium": 1, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-06-27T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-08T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Zig" }, - "dependabot_critical": 0, - "dependabot_high": 5, - "dependabot_medium": 1, - "dependabot_low": 1, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 5 + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "lab/quartz-signal", - "repo_full_name": "demo-org/quartz-signal", - "display_name": "Quartz Signal", - "path": "lab/quartz-signal", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/vellum-compass", + "display_name": "Vellum Compass", + "path": "lab/vellum-compass", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/vellum-compass", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Python" + "Haskell" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 3092, - "release_count": 0, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 3777, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", - "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2820,93 +6566,281 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", + "legacy_status": "active", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/vellum-compass", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Haskell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/rialto-pennant", - "repo_full_name": "demo-org/rialto-pennant", - "display_name": "Rialto Pennant", - "path": "studio/rialto-pennant", - "section_marker": "studio/", + "project_key": "lab/xenon-parapet", + "display_name": "Xenon Parapet", + "path": "lab/xenon-parapet", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/xenon-parapet", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, "stack": [ - "TypeScript" + "Shell" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-08T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3229, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4051, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-06-27T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2922,83 +6856,268 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/xenon-parapet", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-08T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Shell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/solstice-cairn", - "repo_full_name": "demo-org/solstice-cairn", - "display_name": "Solstice Cairn", - "path": "lab/solstice-cairn", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/zephyr-bastion", + "display_name": "Zephyr Bastion", + "path": "lab/zephyr-bastion", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/zephyr-bastion", "default_branch": "main" }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", + "declared": { "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "C" + "Perl" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-06T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": false, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3366, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4325, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3023,101 +7142,357 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "minimum-viable", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/zephyr-bastion", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Perl" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/tabard-anvil", - "repo_full_name": "demo-org/tabard-anvil", - "display_name": "Tabard Anvil", - "path": "lab/tabard-anvil", - "section_marker": "lab/", + "project_key": "platform/dovetail-forge", + "display_name": "Dovetail Forge", + "path": "platform/dovetail-forge", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/dovetail-forge", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Zig" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-06T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-27T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": false, + "has_ci": true, "has_license": true, - "readme_char_count": 3503, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1311, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 5, + "medium": 2, + "low": 4 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 5, + "dependabot_medium": 2, + "dependabot_low": 4, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", @@ -3125,900 +7500,1725 @@ "notion_current_state": "", "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/dovetail-forge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-27T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/umbra-trellis", - "repo_full_name": "demo-org/umbra-trellis", - "display_name": "Umbra Trellis", - "path": "studio/umbra-trellis", - "section_marker": "studio/", + "project_key": "platform/ember-conduit", + "display_name": "Ember Conduit", + "path": "platform/ember-conduit", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ember-conduit", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Lua" + "Rust" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-27T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3640, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1448, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 5, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 5, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "active", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/vellum-compass", - "repo_full_name": "demo-org/vellum-compass", - "display_name": "Vellum Compass", - "path": "lab/vellum-compass", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "Haskell" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 3777, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ember-conduit", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-27T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/wicker-obelisk", - "repo_full_name": "demo-org/wicker-obelisk", - "display_name": "Wicker Obelisk", - "path": "studio/wicker-obelisk", - "section_marker": "studio/", + "project_key": "platform/fathom-beacon", + "display_name": "Fathom Beacon", + "path": "platform/fathom-beacon", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/fathom-beacon", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "PHP" + "TypeScript", + "Node" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-08T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3914, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1585, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 3, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 3, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/xenon-parapet", - "repo_full_name": "demo-org/xenon-parapet", - "display_name": "Xenon Parapet", - "path": "lab/xenon-parapet", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, - "stack": [ - "Shell" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-06T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4051, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/fathom-beacon", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-08T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Node" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/yarrow-spindle", - "repo_full_name": "demo-org/yarrow-spindle", - "display_name": "Yarrow Spindle", - "path": "studio/yarrow-spindle", - "section_marker": "studio/", + "project_key": "platform/ivory-sextant", + "display_name": "Ivory Sextant", + "path": "platform/ivory-sextant", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ivory-sextant", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Java" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-08T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4188, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1996, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 4, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 4, + "dependabot_medium": 1, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "manual-only", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/zephyr-bastion", - "repo_full_name": "demo-org/zephyr-bastion", - "display_name": "Zephyr Bastion", - "path": "lab/zephyr-bastion", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, - "stack": [ - "Perl" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 4325, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ivory-sextant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-08T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/amber-thicket", - "repo_full_name": "demo-org/amber-thicket", - "display_name": "Amber Thicket", - "path": "studio/amber-thicket", - "section_marker": "studio/", + "project_key": "platform/lumen-ferry", + "display_name": "Lumen Ferry", + "path": "platform/lumen-ferry", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/lumen-ferry", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "recent", - "archived": false, "stack": [ - "Dart", - "Flutter" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-06T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-08T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4462, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2407, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 4, + "medium": 0, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 1, + "dependabot_high": 4, + "dependabot_medium": 0, + "dependabot_low": 2, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/bramble-cistern", - "repo_full_name": "demo-org/bramble-cistern", - "display_name": "Bramble Cistern", - "path": "lab/bramble-cistern", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "R" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 4599, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": false, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/lumen-ferry", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-08T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/cobalt-wharf", - "repo_full_name": "demo-org/cobalt-wharf", - "display_name": "Cobalt Wharf", - "path": "studio/cobalt-wharf", - "section_marker": "studio/", - "has_git": true, + "project_key": "studio/amber-thicket", + "display_name": "Amber Thicket", + "path": "studio/amber-thicket", "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/amber-thicket", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Scala" + "Dart", + "Flutter" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-06T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4736, - "release_count": 0, + "last_meaningful_activity_at": "2026-06-08T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 4462, + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, - "doctor_gap": true, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4042,86 +9242,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/amber-thicket", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-08T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Dart, Flutter" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/dusk-pergola", - "repo_full_name": "demo-org/dusk-pergola", - "display_name": "Dusk Pergola", - "path": "lab/dusk-pergola", - "section_marker": "lab/", + "project_key": "studio/cobalt-wharf", + "display_name": "Cobalt Wharf", + "path": "studio/cobalt-wharf", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/cobalt-wharf", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "OCaml" + "Scala" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-08T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 4873, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 4736, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4145,84 +9529,268 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", + "legacy_status": "manual-only", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/cobalt-wharf", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-08T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Scala" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { "project_key": "studio/errant-fathom", - "repo_full_name": "demo-org/errant-fathom", "display_name": "Errant Fathom", "path": "studio/errant-fathom", - "section_marker": "studio/", - "has_git": true, "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/errant-fathom", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ "TypeScript" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, "readme_char_count": 5010, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4250,593 +9818,2133 @@ "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/errant-fathom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/foxglove-mast", - "repo_full_name": "demo-org/foxglove-mast", - "display_name": "Foxglove Mast", - "path": "lab/foxglove-mast", - "section_marker": "lab/", + "project_key": "studio/glacier-quill", + "display_name": "Glacier Quill", + "path": "studio/glacier-quill", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/glacier-quill", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Nim" + "Swift", + "SwiftUI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-06T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 5147, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-27T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1722, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 7, + "medium": 3, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "note": 0, + "warning": 0 + }, + "zero_findings": false + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 1, + "dependabot_high": 7, + "dependabot_medium": 3, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 1, + "secret_scanning_open": 0, + "open_high_critical": 8 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/glacier-quill", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-27T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift, SwiftUI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "archive/gossamer-ridge", - "repo_full_name": "demo-org/gossamer-ridge", - "display_name": "Gossamer Ridge", - "path": "archive/gossamer-ridge", - "section_marker": "archive/", + "project_key": "studio/harbor-lantern", + "display_name": "Harbor Lantern", + "path": "studio/harbor-lantern", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/harbor-lantern", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Python" + "TypeScript", + "React" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5284, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "last_meaningful_activity_at": "2026-06-08T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1859, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 4, + "medium": 1, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 4, + "dependabot_medium": 1, + "dependabot_low": 2, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/harbor-lantern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-08T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, React" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/hollow-tessera", - "repo_full_name": "demo-org/hollow-tessera", - "display_name": "Hollow Tessera", - "path": "archive/hollow-tessera", - "section_marker": "archive/", + "project_key": "studio/juniper-kiln", + "display_name": "Juniper Kiln", + "path": "studio/juniper-kiln", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/juniper-kiln", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "JavaScript" + "Kotlin" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5421, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-27T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2133, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 5, + "medium": 0, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 5, + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/juniper-kiln", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-27T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Kotlin" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/indigo-palisade", - "repo_full_name": "demo-org/indigo-palisade", - "display_name": "Indigo Palisade", - "path": "archive/indigo-palisade", - "section_marker": "archive/", + "project_key": "studio/kestrel-loom", + "display_name": "Kestrel Loom", + "path": "studio/kestrel-loom", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/kestrel-loom", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5558, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-08T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2270, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 7, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 7, + "dependabot_medium": 1, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 7 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/kestrel-loom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-08T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/jetty-marquee", - "repo_full_name": "demo-org/jetty-marquee", - "display_name": "Jetty Marquee", - "path": "archive/jetty-marquee", - "section_marker": "archive/", + "project_key": "studio/nimbus-charter", + "display_name": "Nimbus Charter", + "path": "studio/nimbus-charter", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/nimbus-charter", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Ruby" + "JavaScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 5695, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "decision-needed", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2681, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-06-29T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 4, + "medium": 2, + "low": 3 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 4, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/nimbus-charter", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/kindling-arbor", - "repo_full_name": "demo-org/kindling-arbor", - "display_name": "Kindling Arbor", - "path": "archive/kindling-arbor", - "section_marker": "archive/", + "project_key": "studio/rialto-pennant", + "display_name": "Rialto Pennant", + "path": "studio/rialto-pennant", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/rialto-pennant", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "C++" + "TypeScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5832, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3229, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, + "coverage_state": "stale", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "stale", + "source_produced_at": "2026-06-28T21:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-28T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "code_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-28T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-06-28T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + } + }, "dependabot_critical": null, "dependabot_high": null, "dependabot_medium": null, @@ -4850,83 +11958,275 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "manual-only", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-06-28T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/rialto-pennant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/lattice-bezel", - "repo_full_name": "demo-org/lattice-bezel", - "display_name": "Lattice Bezel", - "path": "archive/lattice-bezel", - "section_marker": "archive/", + "project_key": "studio/umbra-trellis", + "display_name": "Umbra Trellis", + "path": "studio/umbra-trellis", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/umbra-trellis", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Swift" + "Lua" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5969, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3640, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4946,87 +12246,272 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/umbra-trellis", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Lua" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/mica-turnstile", - "repo_full_name": "demo-org/mica-turnstile", - "display_name": "Mica Turnstile", - "path": "archive/mica-turnstile", - "section_marker": "archive/", + "project_key": "studio/wicker-obelisk", + "display_name": "Wicker Obelisk", + "path": "studio/wicker-obelisk", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/wicker-obelisk", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Rust" + "PHP" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 6106, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3914, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5050,84 +12535,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/wicker-obelisk", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "PHP" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/nocturne-spar", - "repo_full_name": "demo-org/nocturne-spar", - "display_name": "Nocturne Spar", - "path": "archive/nocturne-spar", - "section_marker": "archive/", + "project_key": "studio/yarrow-spindle", + "display_name": "Yarrow Spindle", + "path": "studio/yarrow-spindle", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/yarrow-spindle", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "TypeScript" + "Java" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-19T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 6243, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-21T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4188, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5151,34 +12822,238 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-06-29T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/yarrow-spindle", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-21T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Java" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] } ], "rollups": { "risk_tier_counts": { - "elevated": 16, - "moderate": 12, - "baseline": 4, - "deferred": 8 + "elevated": 10, + "moderate": 9, + "baseline": 10, + "deferred": 11 }, "security": { - "coverage_state": "partial", + "scanned_count": 10, + "unavailable_count": 30, "complete_repo_count": 10, "partial_repo_count": 6, "stale_count": 2, "unknown_count": 22, - "scanned_count": 10, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "dependabot_observed_count": 16, + "code_scanning_observed_count": 10, + "secret_scanning_observed_count": 10, + "dependabot_zero_finding_count": 0, + "code_scanning_zero_finding_count": 6, + "secret_scanning_zero_finding_count": 9, + "remote_default_branch_observed_count": 16, + "remote_default_branch_partial_count": 0, + "remote_default_branch_stale_count": 2, + "remote_default_branch_unavailable_count": 22, + "coverage_state": "partial", "repos_with_open_high_critical": 16, "total_open_high": 85, "total_open_critical": 5 }, "decision": { - "decision_needed_count": 3, - "default_attention_count": 10 + "decision_needed_count": 13, + "default_attention_count": 13 } } } \ No newline at end of file diff --git a/output/demo/portfolio-truth-history-05.json b/output/demo/portfolio-truth-history-05.json index 45e3f937..c3cae4e5 100644 --- a/output/demo/portfolio-truth-history-05.json +++ b/output/demo/portfolio-truth-history-05.json @@ -1,15 +1,98 @@ { "schema_version": "0.11.0", + "generated_at": "2026-07-06T22:09:43.833784+00:00", "derivation_policy_version": "portfolio_attention.v3", - "generated_at": "2026-07-04T22:50:13.825998+00:00", - "workspace_root": "/demo-workspace", - "producer": { - "repository": "demo-org/portfolio-auditor", - "checkout_role": "demo-fixture", - "worktree_clean": true, - "dirty_path_count": 0, - "verified_at": "2026-07-04T22:50:13.825998+00:00" + "producer": {}, + "inputs": { + "catalog": { + "source_id": "portfolio-catalog", + "sha256": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00" + }, + "workspace": { + "source_id": "projects-root", + "observed_at": "2026-07-06T22:09:43.833784+00:00" + }, + "notion": { + "mode": "unavailable", + "observed_at": null, + "carried_from_generated_at": null + }, + "github_security": { + "source_id": "github-security-coverage-receipt", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "produced_at": "2026-07-06T22:09:43.833784+00:00", + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 18, + "path": "/demo-workspace/github-security-coverage.json", + "receipt_id": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", + "content_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" + } + }, + "coverage": [ + { + "source": "workspace", + "state": "observed", + "project_count": 40 + }, + { + "source": "git", + "state": "observed", + "observed_count": 40, + "project_count": 40 + }, + { + "source": "github_security", + "state": "partial", + "scanned_count": 10, + "complete_repo_count": 10, + "partial_repo_count": 6, + "stale_count": 2, + "unknown_count": 22, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "provider_observed_counts": { + "dependabot": 16, + "code_scanning": 10, + "secret_scanning": 10 + }, + "provider_zero_finding_counts": { + "dependabot": 0, + "code_scanning": 6, + "secret_scanning": 9 + }, + "remote_default_branch_counts": { + "observed": 16, + "partial": 0, + "stale": 2, + "credential_unavailable": 0, + "forbidden": 0, + "not_found": 0, + "rate_limited": 0, + "transient_error": 0, + "malformed": 0, + "not_requested": 0, + "unknown": 22 + }, + "project_count": 40 + }, + { + "source": "notion", + "state": "unknown", + "observed_count": 0 + } + ], + "exclusions": { + "policy_version": "workspace_discovery.v2", + "counts": {} }, + "workspace_root": "/demo-workspace", "source_summary": { "workspace_root": "/demo-workspace", "project_count": 40, @@ -17,1318 +100,2509 @@ "catalog_warnings": [], "legacy_registry_rows": 40, "notion_context_rows": 0, - "notion_context_carried_forward": 0, + "notion_context_carried_forward": false, "context_quality_counts": { + "none": 8, "full": 8, "standard": 8, "minimum-viable": 8, - "boilerplate": 8, - "none": 8 + "boilerplate": 8 }, "activity_status_counts": { + "stale": 19, "active": 9, - "recent": 12, - "stale": 19 + "recent": 12 }, + "archived_count": 8, "attention_state_counts": { - "active-product": 3, - "decision-needed": 3, - "active-infra": 4, - "manual-only": 7, + "archived": 8, + "decision-needed": 13, "experiment": 8, - "parked": 7, - "archived": 8 + "parked": 6, + "manual-only": 5 }, - "archived_count": 8, "github_archived_count": 0, "duplicate_display_names": [], "unresolved_duplicate_display_names": [] }, "precedence_matrix": { - "identity": [ - "demo fixture" + "declared.owner": [ + "catalog_repo", + "catalog_group" + ], + "declared.team": [ + "catalog_repo", + "catalog_group" + ], + "declared.purpose": [ + "catalog_repo", + "catalog_group" + ], + "declared.lifecycle_state": [ + "catalog_repo", + "catalog_group" + ], + "declared.criticality": [ + "catalog_repo", + "catalog_group" + ], + "declared.review_cadence": [ + "catalog_repo", + "catalog_group" + ], + "declared.intended_disposition": [ + "catalog_repo", + "catalog_group" + ], + "declared.maturity_program": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.target_maturity": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.operating_path": [ + "normalized" + ], + "declared.category": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "declared.tool_provenance": [ + "catalog_repo", + "catalog_group", + "inference", + "legacy_registry" + ], + "declared.notes": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "derived.stack": [ + "workspace", + "legacy_registry" + ], + "derived.context_quality": [ + "workspace", + "catalog_repo", + "catalog_group" + ], + "derived.context_files": [ + "workspace" ], - "declared": [ - "demo fixture" + "derived.primary_context_file": [ + "workspace" ], - "derived": [ - "demo fixture" + "derived.project_summary_present": [ + "workspace" ], - "risk": [ - "demo fixture" + "derived.current_state_present": [ + "workspace" ], - "security": [ - "demo fixture receipt" + "derived.stack_present": [ + "workspace" + ], + "derived.run_instructions_present": [ + "workspace" + ], + "derived.known_risks_present": [ + "workspace" + ], + "derived.next_recommended_move_present": [ + "workspace" + ], + "derived.last_meaningful_activity_at": [ + "git", + "workspace" + ], + "derived.activity_status": [ + "derived" + ], + "derived.archived": [ + "derived" + ], + "derived.attention_state": [ + "derived" + ], + "derived.path_override": [ + "normalized" + ], + "derived.path_confidence": [ + "normalized" + ], + "derived.path_rationale": [ + "normalized" + ], + "derived.has_tests": [ + "workspace" + ], + "derived.has_ci": [ + "workspace" + ], + "derived.readme_char_count": [ + "workspace" ] }, - "coverage": [ - { - "source": "workspace", - "state": "observed", - "project_count": 40 - }, - { - "source": "github_security", - "state": "partial", - "project_count": 40, - "complete_repo_count": 10, - "partial_repo_count": 6, - "stale_count": 2, - "unknown_count": 22 - } - ], - "exclusions": [], - "inputs": [], "warnings": [], "projects": [ { "identity": { - "project_key": "flagship/aurora-ledger", - "repo_full_name": "demo-org/aurora-ledger", - "display_name": "Aurora Ledger", - "path": "flagship/aurora-ledger", - "section_marker": "flagship/", + "project_key": "archive/gossamer-ridge", + "display_name": "Gossamer Ridge", + "path": "archive/gossamer-ridge", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/gossamer-ridge", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "TypeScript", - "Next.js" + "Python" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-02T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 900, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5284, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "11 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 8, - "medium": 2, - "low": 3 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 8, - "dependabot_medium": 2, - "dependabot_low": 3, - "code_scanning_critical": 0, - "code_scanning_high": 2, - "secret_scanning_open": 0, - "open_high_critical": 11 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "flagship/basalt-relay", - "repo_full_name": "demo-org/basalt-relay", - "display_name": "Basalt Relay", - "path": "flagship/basalt-relay", - "section_marker": "flagship/", - "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", - "default_branch": "main" }, - "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", - "owner": "demo-operator", + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/gossamer-ridge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/hollow-tessera", + "display_name": "Hollow Tessera", + "path": "archive/hollow-tessera", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/hollow-tessera", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "Rust", - "Tauri 2" + "JavaScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-02T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1037, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5421, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "6 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 5, - "medium": 1, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 0, - "dependabot_high": 5, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 6 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/hollow-tessera", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/cinder-atlas", - "repo_full_name": "demo-org/cinder-atlas", - "display_name": "Cinder Atlas", - "path": "flagship/cinder-atlas", - "section_marker": "flagship/", + "project_key": "archive/indigo-palisade", + "display_name": "Indigo Palisade", + "path": "archive/indigo-palisade", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/indigo-palisade", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "FastAPI" + "Go" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-02T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1174, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is finish from explicit operating path." - }, - "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "8 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": false, - "context_risk": true, - "path_risk": true - }, - "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 2, - "high": 5, - "medium": 0, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 1 - }, - "zero_findings": false - } - }, - "dependabot_critical": 2, - "dependabot_high": 5, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 1, - "code_scanning_high": 0, - "secret_scanning_open": 1, - "open_high_critical": 8 + "has_ci": false, + "has_license": false, + "readme_char_count": 5558, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/indigo-palisade", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/dovetail-forge", - "repo_full_name": "demo-org/dovetail-forge", - "display_name": "Dovetail Forge", - "path": "platform/dovetail-forge", - "section_marker": "platform/", + "project_key": "archive/jetty-marquee", + "display_name": "Jetty Marquee", + "path": "archive/jetty-marquee", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/jetty-marquee", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-02T22:50:13.825998+00:00", - "has_tests": true, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1311, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 5695, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "4 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 4, - "medium": 2, - "low": 4 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/jetty-marquee", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 4, - "dependabot_medium": 2, - "dependabot_low": 4, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 4 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "platform/ember-conduit", - "repo_full_name": "demo-org/ember-conduit", - "display_name": "Ember Conduit", - "path": "platform/ember-conduit", - "section_marker": "platform/", + "project_key": "archive/kindling-arbor", + "display_name": "Kindling Arbor", + "path": "archive/kindling-arbor", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/kindling-arbor", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "C++" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-02T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1448, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5832, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "4 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 4, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/kindling-arbor", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 4, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 4 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C++" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/lattice-bezel", + "display_name": "Lattice Bezel", + "path": "archive/lattice-bezel", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/lattice-bezel", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "Swift" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": false, + "has_license": false, + "readme_char_count": 5969, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/lattice-bezel", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/fathom-beacon", - "repo_full_name": "demo-org/fathom-beacon", - "display_name": "Fathom Beacon", - "path": "platform/fathom-beacon", - "section_marker": "platform/", + "project_key": "archive/mica-turnstile", + "display_name": "Mica Turnstile", + "path": "archive/mica-turnstile", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/mica-turnstile", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-infra", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "Node" + "Rust" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-13T22:50:13.825998+00:00", - "has_tests": true, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1585, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 6106, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "2 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/mica-turnstile", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 2, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 2 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/glacier-quill", - "repo_full_name": "demo-org/glacier-quill", - "display_name": "Glacier Quill", - "path": "studio/glacier-quill", - "section_marker": "studio/", + "project_key": "archive/nocturne-spar", + "display_name": "Nocturne Spar", + "path": "archive/nocturne-spar", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/nocturne-spar", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Swift", - "SwiftUI" + "TypeScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-02T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1722, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 6243, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "8 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 6, - "medium": 3, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 6, - "dependabot_medium": 3, - "dependabot_low": 1, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 8 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/nocturne-spar", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/harbor-lantern", - "repo_full_name": "demo-org/harbor-lantern", - "display_name": "Harbor Lantern", - "path": "studio/harbor-lantern", - "section_marker": "studio/", + "project_key": "flagship/aurora-ledger", + "display_name": "Aurora Ledger", + "path": "flagship/aurora-ledger", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/aurora-ledger", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-product", - "activity_status": "recent", - "archived": false, "stack": [ "TypeScript", - "React" + "Next.js" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-13T22:50:13.825998+00:00", + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-04T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1859, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is operate from explicit operating path." + "readme_char_count": 900, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "3 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1337,68 +2611,68 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 3, - "medium": 1, - "low": 2 + "critical": 1, + "high": 8, + "medium": 2, + "low": 3 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 2, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1406,97 +2680,293 @@ "zero_findings": true } }, - "dependabot_critical": 0, - "dependabot_high": 3, - "dependabot_medium": 1, - "dependabot_low": 2, + "dependabot_critical": 1, + "dependabot_high": 8, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 2, "secret_scanning_open": 0, - "open_high_critical": 3 + "open_high_critical": 9 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "studio", + "legacy_context_quality": "full", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/aurora-ledger", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Next.js" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/ivory-sextant", - "repo_full_name": "demo-org/ivory-sextant", - "display_name": "Ivory Sextant", - "path": "platform/ivory-sextant", - "section_marker": "platform/", + "project_key": "flagship/basalt-relay", + "display_name": "Basalt Relay", + "path": "flagship/basalt-relay", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/basalt-relay", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Python" + "Rust", + "Tauri 2" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-13T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-04T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1996, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1037, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "3 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1505,26 +2975,26 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 3, + "high": 5, "medium": 1, "low": 0 }, @@ -1533,40 +3003,40 @@ "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 1, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1575,95 +3045,291 @@ } }, "dependabot_critical": 0, - "dependabot_high": 3, + "dependabot_high": 5, "dependabot_medium": 1, "dependabot_low": 0, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 1, "secret_scanning_open": 0, - "open_high_critical": 3 + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/basalt-relay", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust, Tauri 2" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/juniper-kiln", - "repo_full_name": "demo-org/juniper-kiln", - "display_name": "Juniper Kiln", - "path": "studio/juniper-kiln", - "section_marker": "studio/", + "project_key": "flagship/cinder-atlas", + "display_name": "Cinder Atlas", + "path": "flagship/cinder-atlas", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/cinder-atlas", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Kotlin" + "Python", + "FastAPI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-02T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-04T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Finish from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2133, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1174, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "4 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1672,26 +3338,26 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 4, + "critical": 2, + "high": 5, "medium": 0, "low": 1 }, @@ -1700,137 +3366,335 @@ "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, + "critical": 1, "high": 0, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "open": 0 + "open": 1 }, - "zero_findings": true + "zero_findings": false } }, - "dependabot_critical": 0, - "dependabot_high": 4, + "dependabot_critical": 2, + "dependabot_high": 5, "dependabot_medium": 0, "dependabot_low": 1, - "code_scanning_critical": 0, + "code_scanning_critical": 1, "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 4 + "secret_scanning_open": 1, + "open_high_critical": 7 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "minimum-viable", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/cinder-atlas", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, FastAPI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/kestrel-loom", - "repo_full_name": "demo-org/kestrel-loom", - "display_name": "Kestrel Loom", - "path": "studio/kestrel-loom", - "section_marker": "studio/", + "project_key": "flagship/meridian-vault", + "display_name": "Meridian Vault", + "path": "flagship/meridian-vault", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/meridian-vault", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "recent", - "archived": false, "stack": [ - "Ruby" + "Python", + "Django" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-13T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-04T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2270, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "readme_char_count": 2544, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "6 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -1839,28 +3703,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, "high": 6, - "medium": 1, - "low": 0 + "medium": 4, + "low": 1 }, "zero_findings": false }, @@ -1877,7 +3741,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -1895,7 +3759,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -1903,256 +3767,1149 @@ }, "dependabot_critical": 0, "dependabot_high": 6, - "dependabot_medium": 1, - "dependabot_low": 0, + "dependabot_medium": 4, + "dependabot_low": 1, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 6 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "full", + "legacy_category": "flagship", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/meridian-vault", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, Django" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/bramble-cistern", + "display_name": "Bramble Cistern", + "path": "lab/bramble-cistern", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/bramble-cistern", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "R" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4599, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 6 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/bramble-cistern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "R" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/lumen-ferry", - "repo_full_name": "demo-org/lumen-ferry", - "display_name": "Lumen Ferry", - "path": "platform/lumen-ferry", - "section_marker": "platform/", + "project_key": "lab/dusk-pergola", + "display_name": "Dusk Pergola", + "path": "lab/dusk-pergola", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/dusk-pergola", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Go" + "OCaml" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-13T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 2407, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 4873, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "4 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", - "providers": { - "dependabot": { + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/dusk-pergola", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 3, - "medium": 0, - "low": 2 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" }, - "dependabot_critical": 1, - "dependabot_high": 3, - "dependabot_medium": 0, - "dependabot_low": 2, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "OCaml" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/foxglove-mast", + "display_name": "Foxglove Mast", + "path": "lab/foxglove-mast", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/foxglove-mast", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "Nim" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-15T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 5147, + "release_count": 0 + }, + "risk": { + "risk_tier": "elevated", + "risk_factors": [ + "weak-context-active", + "investigate-override", + "no-run-instructions" + ], + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 4 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", + "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "platform", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/foxglove-mast", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-15T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Nim" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/meridian-vault", - "repo_full_name": "demo-org/meridian-vault", - "display_name": "Meridian Vault", - "path": "flagship/meridian-vault", - "section_marker": "flagship/", + "project_key": "lab/onyx-placard", + "display_name": "Onyx Placard", + "path": "lab/onyx-placard", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/onyx-placard", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "Django" + "Elixir" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-02T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-15T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Experiment from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2544, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2818, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "6 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -2161,28 +4918,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 6, - "medium": 4, - "low": 1 + "high": 3, + "medium": 0, + "low": 0 }, "zero_findings": false }, @@ -2199,7 +4956,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2217,103 +4974,300 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 6, - "dependabot_medium": 4, - "dependabot_low": 1, + "dependabot_high": 3, + "dependabot_medium": 0, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 6 + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_context_quality": "minimum-viable", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/onyx-placard", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-15T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Elixir" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/nimbus-charter", - "repo_full_name": "demo-org/nimbus-charter", - "display_name": "Nimbus Charter", - "path": "studio/nimbus-charter", - "section_marker": "studio/", + "project_key": "lab/pallas-runner", + "display_name": "Pallas Runner", + "path": "lab/pallas-runner", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/pallas-runner", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "JavaScript" + "Rust" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-07-04T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 2681, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2955, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "3 open high/critical security alerts", - "no meaningful activity in the recent window" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, @@ -2322,28 +5276,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 3, - "medium": 2, - "low": 3 + "high": 4, + "medium": 1, + "low": 1 }, "zero_findings": false }, @@ -2360,7 +5314,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2378,434 +5332,1226 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-06T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 3, - "dependabot_medium": 2, - "dependabot_low": 3, + "dependabot_high": 4, + "dependabot_medium": 1, + "dependabot_low": 1, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 3 + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/pallas-runner", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/onyx-placard", - "repo_full_name": "demo-org/onyx-placard", - "display_name": "Onyx Placard", - "path": "lab/onyx-placard", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/quartz-signal", + "display_name": "Quartz Signal", + "path": "lab/quartz-signal", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/quartz-signal", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Elixir" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-13T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2818, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3092, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "3 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", + "coverage_state": "stale", "cohort_member": true, "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", + "receipt_state": "stale", + "source_produced_at": "2026-07-05T21:09:43.833784+00:00", "providers": { "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", + "observed_at": "2026-07-05T21:09:43.833784+00:00", "pagination_complete": true, - "counts": { - "critical": 0, - "high": 3, - "medium": 0, - "low": 0 - }, - "zero_findings": false + "counts": null, + "zero_findings": null }, "code_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-07-05T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null }, "secret_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-07-05T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null } }, - "dependabot_critical": 0, - "dependabot_high": 3, - "dependabot_medium": 0, - "dependabot_low": 0, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-07-05T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/quartz-signal", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/solstice-cairn", + "display_name": "Solstice Cairn", + "path": "lab/solstice-cairn", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/solstice-cairn", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "C" + ], + "context_quality": "minimum-viable", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-15T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3366, + "release_count": 0 + }, + "risk": { + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 3 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", + "legacy_status": "manual-only", "legacy_context_quality": "minimum-viable", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/solstice-cairn", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-15T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/pallas-runner", - "repo_full_name": "demo-org/pallas-runner", - "display_name": "Pallas Runner", - "path": "lab/pallas-runner", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/tabard-anvil", + "display_name": "Tabard Anvil", + "path": "lab/tabard-anvil", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/tabard-anvil", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "Zig" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-02T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-15T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 2955, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3503, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "4 open high/critical security alerts", - "no CI workflow", - "thin project context" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": true, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", - "providers": { - "dependabot": { + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/tabard-anvil", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 4, - "medium": 1, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-04T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-15T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Zig" }, - "dependabot_critical": 0, - "dependabot_high": 4, - "dependabot_medium": 1, - "dependabot_low": 1, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 4 + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "lab/quartz-signal", - "repo_full_name": "demo-org/quartz-signal", - "display_name": "Quartz Signal", - "path": "lab/quartz-signal", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/vellum-compass", + "display_name": "Vellum Compass", + "path": "lab/vellum-compass", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/vellum-compass", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Python" + "Haskell" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 3092, - "release_count": 0, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 3777, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", - "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2820,93 +6566,281 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", + "legacy_status": "active", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/vellum-compass", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Haskell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/rialto-pennant", - "repo_full_name": "demo-org/rialto-pennant", - "display_name": "Rialto Pennant", - "path": "studio/rialto-pennant", - "section_marker": "studio/", + "project_key": "lab/xenon-parapet", + "display_name": "Xenon Parapet", + "path": "lab/xenon-parapet", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/xenon-parapet", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, "stack": [ - "TypeScript" + "Shell" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-15T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3229, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4051, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-07-04T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2922,83 +6856,268 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/xenon-parapet", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-15T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Shell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/solstice-cairn", - "repo_full_name": "demo-org/solstice-cairn", - "display_name": "Solstice Cairn", - "path": "lab/solstice-cairn", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/zephyr-bastion", + "display_name": "Zephyr Bastion", + "path": "lab/zephyr-bastion", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/zephyr-bastion", "default_branch": "main" }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", + "declared": { "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "C" + "Perl" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-13T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": false, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3366, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4325, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3023,101 +7142,357 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "minimum-viable", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/zephyr-bastion", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Perl" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/tabard-anvil", - "repo_full_name": "demo-org/tabard-anvil", - "display_name": "Tabard Anvil", - "path": "lab/tabard-anvil", - "section_marker": "lab/", + "project_key": "platform/dovetail-forge", + "display_name": "Dovetail Forge", + "path": "platform/dovetail-forge", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/dovetail-forge", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Zig" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-13T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-04T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": false, + "has_ci": true, "has_license": true, - "readme_char_count": 3503, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1311, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 4, + "medium": 2, + "low": 4 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 4, + "dependabot_medium": 2, + "dependabot_low": 4, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", @@ -3125,900 +7500,1725 @@ "notion_current_state": "", "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/dovetail-forge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/umbra-trellis", - "repo_full_name": "demo-org/umbra-trellis", - "display_name": "Umbra Trellis", - "path": "studio/umbra-trellis", - "section_marker": "studio/", + "project_key": "platform/ember-conduit", + "display_name": "Ember Conduit", + "path": "platform/ember-conduit", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ember-conduit", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Lua" + "Rust" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-07-04T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3640, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1448, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 4, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 4, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "active", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/vellum-compass", - "repo_full_name": "demo-org/vellum-compass", - "display_name": "Vellum Compass", - "path": "lab/vellum-compass", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "Haskell" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 3777, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ember-conduit", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/wicker-obelisk", - "repo_full_name": "demo-org/wicker-obelisk", - "display_name": "Wicker Obelisk", - "path": "studio/wicker-obelisk", - "section_marker": "studio/", + "project_key": "platform/fathom-beacon", + "display_name": "Fathom Beacon", + "path": "platform/fathom-beacon", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/fathom-beacon", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "PHP" + "TypeScript", + "Node" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-15T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3914, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1585, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 2, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 2, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/xenon-parapet", - "repo_full_name": "demo-org/xenon-parapet", - "display_name": "Xenon Parapet", - "path": "lab/xenon-parapet", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, - "stack": [ - "Shell" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-13T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4051, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/fathom-beacon", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-15T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Node" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/yarrow-spindle", - "repo_full_name": "demo-org/yarrow-spindle", - "display_name": "Yarrow Spindle", - "path": "studio/yarrow-spindle", - "section_marker": "studio/", + "project_key": "platform/ivory-sextant", + "display_name": "Ivory Sextant", + "path": "platform/ivory-sextant", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ivory-sextant", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Java" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-15T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4188, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1996, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 3, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 3, + "dependabot_medium": 1, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "manual-only", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/zephyr-bastion", - "repo_full_name": "demo-org/zephyr-bastion", - "display_name": "Zephyr Bastion", - "path": "lab/zephyr-bastion", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, - "stack": [ - "Perl" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 4325, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ivory-sextant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-15T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/amber-thicket", - "repo_full_name": "demo-org/amber-thicket", - "display_name": "Amber Thicket", - "path": "studio/amber-thicket", - "section_marker": "studio/", + "project_key": "platform/lumen-ferry", + "display_name": "Lumen Ferry", + "path": "platform/lumen-ferry", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/lumen-ferry", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "recent", - "archived": false, "stack": [ - "Dart", - "Flutter" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-13T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-15T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4462, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2407, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 3, + "medium": 0, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 1, + "dependabot_high": 3, + "dependabot_medium": 0, + "dependabot_low": 2, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/bramble-cistern", - "repo_full_name": "demo-org/bramble-cistern", - "display_name": "Bramble Cistern", - "path": "lab/bramble-cistern", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "R" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 4599, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": false, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/lumen-ferry", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-15T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/cobalt-wharf", - "repo_full_name": "demo-org/cobalt-wharf", - "display_name": "Cobalt Wharf", - "path": "studio/cobalt-wharf", - "section_marker": "studio/", - "has_git": true, + "project_key": "studio/amber-thicket", + "display_name": "Amber Thicket", + "path": "studio/amber-thicket", "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/amber-thicket", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Scala" + "Dart", + "Flutter" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-13T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4736, - "release_count": 0, + "last_meaningful_activity_at": "2026-06-15T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 4462, + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, - "doctor_gap": true, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4042,86 +9242,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/amber-thicket", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-15T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Dart, Flutter" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/dusk-pergola", - "repo_full_name": "demo-org/dusk-pergola", - "display_name": "Dusk Pergola", - "path": "lab/dusk-pergola", - "section_marker": "lab/", + "project_key": "studio/cobalt-wharf", + "display_name": "Cobalt Wharf", + "path": "studio/cobalt-wharf", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/cobalt-wharf", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "OCaml" + "Scala" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-15T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 4873, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 4736, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4145,84 +9529,268 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", + "legacy_status": "manual-only", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/cobalt-wharf", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-15T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Scala" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { "project_key": "studio/errant-fathom", - "repo_full_name": "demo-org/errant-fathom", "display_name": "Errant Fathom", "path": "studio/errant-fathom", - "section_marker": "studio/", - "has_git": true, "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/errant-fathom", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ "TypeScript" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, "readme_char_count": 5010, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4250,593 +9818,2133 @@ "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/errant-fathom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/foxglove-mast", - "repo_full_name": "demo-org/foxglove-mast", - "display_name": "Foxglove Mast", - "path": "lab/foxglove-mast", - "section_marker": "lab/", + "project_key": "studio/glacier-quill", + "display_name": "Glacier Quill", + "path": "studio/glacier-quill", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/glacier-quill", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Nim" + "Swift", + "SwiftUI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-13T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 5147, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-04T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1722, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 6, + "medium": 3, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "note": 0, + "warning": 0 + }, + "zero_findings": false + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 1, + "dependabot_high": 6, + "dependabot_medium": 3, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 1, + "secret_scanning_open": 0, + "open_high_critical": 7 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/glacier-quill", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift, SwiftUI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "archive/gossamer-ridge", - "repo_full_name": "demo-org/gossamer-ridge", - "display_name": "Gossamer Ridge", - "path": "archive/gossamer-ridge", - "section_marker": "archive/", + "project_key": "studio/harbor-lantern", + "display_name": "Harbor Lantern", + "path": "studio/harbor-lantern", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/harbor-lantern", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Python" + "TypeScript", + "React" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5284, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "last_meaningful_activity_at": "2026-06-15T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1859, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 3, + "medium": 1, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 3, + "dependabot_medium": 1, + "dependabot_low": 2, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/harbor-lantern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-15T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, React" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/hollow-tessera", - "repo_full_name": "demo-org/hollow-tessera", - "display_name": "Hollow Tessera", - "path": "archive/hollow-tessera", - "section_marker": "archive/", + "project_key": "studio/juniper-kiln", + "display_name": "Juniper Kiln", + "path": "studio/juniper-kiln", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/juniper-kiln", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "JavaScript" + "Kotlin" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5421, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-04T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2133, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 4, + "medium": 0, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 4, + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/juniper-kiln", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Kotlin" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/indigo-palisade", - "repo_full_name": "demo-org/indigo-palisade", - "display_name": "Indigo Palisade", - "path": "archive/indigo-palisade", - "section_marker": "archive/", + "project_key": "studio/kestrel-loom", + "display_name": "Kestrel Loom", + "path": "studio/kestrel-loom", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/kestrel-loom", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5558, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-15T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2270, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 6, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 6, + "dependabot_medium": 1, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/kestrel-loom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-15T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/jetty-marquee", - "repo_full_name": "demo-org/jetty-marquee", - "display_name": "Jetty Marquee", - "path": "archive/jetty-marquee", - "section_marker": "archive/", + "project_key": "studio/nimbus-charter", + "display_name": "Nimbus Charter", + "path": "studio/nimbus-charter", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/nimbus-charter", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Ruby" + "JavaScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 5695, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "decision-needed", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2681, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-06T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 3, + "medium": 2, + "low": 3 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 3, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/nimbus-charter", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/kindling-arbor", - "repo_full_name": "demo-org/kindling-arbor", - "display_name": "Kindling Arbor", - "path": "archive/kindling-arbor", - "section_marker": "archive/", + "project_key": "studio/rialto-pennant", + "display_name": "Rialto Pennant", + "path": "studio/rialto-pennant", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/rialto-pennant", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "C++" + "TypeScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5832, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3229, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, + "coverage_state": "stale", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "stale", + "source_produced_at": "2026-07-05T21:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-05T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "code_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-05T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-05T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + } + }, "dependabot_critical": null, "dependabot_high": null, "dependabot_medium": null, @@ -4850,83 +11958,275 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "manual-only", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-07-05T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/rialto-pennant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/lattice-bezel", - "repo_full_name": "demo-org/lattice-bezel", - "display_name": "Lattice Bezel", - "path": "archive/lattice-bezel", - "section_marker": "archive/", + "project_key": "studio/umbra-trellis", + "display_name": "Umbra Trellis", + "path": "studio/umbra-trellis", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/umbra-trellis", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Swift" + "Lua" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5969, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3640, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4946,87 +12246,272 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/umbra-trellis", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Lua" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/mica-turnstile", - "repo_full_name": "demo-org/mica-turnstile", - "display_name": "Mica Turnstile", - "path": "archive/mica-turnstile", - "section_marker": "archive/", + "project_key": "studio/wicker-obelisk", + "display_name": "Wicker Obelisk", + "path": "studio/wicker-obelisk", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/wicker-obelisk", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Rust" + "PHP" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 6106, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3914, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5050,84 +12535,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/wicker-obelisk", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "PHP" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/nocturne-spar", - "repo_full_name": "demo-org/nocturne-spar", - "display_name": "Nocturne Spar", - "path": "archive/nocturne-spar", - "section_marker": "archive/", + "project_key": "studio/yarrow-spindle", + "display_name": "Yarrow Spindle", + "path": "studio/yarrow-spindle", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/yarrow-spindle", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "TypeScript" + "Java" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2025-12-26T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 6243, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2025-12-28T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4188, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5151,34 +12822,238 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-06T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/yarrow-spindle", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2025-12-28T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Java" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] } ], "rollups": { "risk_tier_counts": { - "elevated": 16, - "moderate": 12, - "baseline": 4, - "deferred": 8 + "elevated": 10, + "moderate": 9, + "baseline": 10, + "deferred": 11 }, "security": { - "coverage_state": "partial", + "scanned_count": 10, + "unavailable_count": 30, "complete_repo_count": 10, "partial_repo_count": 6, "stale_count": 2, "unknown_count": 22, - "scanned_count": 10, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "dependabot_observed_count": 16, + "code_scanning_observed_count": 10, + "secret_scanning_observed_count": 10, + "dependabot_zero_finding_count": 0, + "code_scanning_zero_finding_count": 6, + "secret_scanning_zero_finding_count": 9, + "remote_default_branch_observed_count": 16, + "remote_default_branch_partial_count": 0, + "remote_default_branch_stale_count": 2, + "remote_default_branch_unavailable_count": 22, + "coverage_state": "partial", "repos_with_open_high_critical": 16, "total_open_high": 69, "total_open_critical": 5 }, "decision": { - "decision_needed_count": 3, - "default_attention_count": 10 + "decision_needed_count": 13, + "default_attention_count": 13 } } } \ No newline at end of file diff --git a/output/demo/portfolio-truth-history-06.json b/output/demo/portfolio-truth-history-06.json index 047391c6..dc073a29 100644 --- a/output/demo/portfolio-truth-history-06.json +++ b/output/demo/portfolio-truth-history-06.json @@ -1,15 +1,98 @@ { "schema_version": "0.11.0", + "generated_at": "2026-07-13T22:09:43.833784+00:00", "derivation_policy_version": "portfolio_attention.v3", - "generated_at": "2026-07-11T22:50:13.825998+00:00", - "workspace_root": "/demo-workspace", - "producer": { - "repository": "demo-org/portfolio-auditor", - "checkout_role": "demo-fixture", - "worktree_clean": true, - "dirty_path_count": 0, - "verified_at": "2026-07-11T22:50:13.825998+00:00" + "producer": {}, + "inputs": { + "catalog": { + "source_id": "portfolio-catalog", + "sha256": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00" + }, + "workspace": { + "source_id": "projects-root", + "observed_at": "2026-07-13T22:09:43.833784+00:00" + }, + "notion": { + "mode": "unavailable", + "observed_at": null, + "carried_from_generated_at": null + }, + "github_security": { + "source_id": "github-security-coverage-receipt", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "produced_at": "2026-07-13T22:09:43.833784+00:00", + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 18, + "path": "/demo-workspace/github-security-coverage.json", + "receipt_id": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", + "content_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" + } + }, + "coverage": [ + { + "source": "workspace", + "state": "observed", + "project_count": 40 + }, + { + "source": "git", + "state": "observed", + "observed_count": 40, + "project_count": 40 + }, + { + "source": "github_security", + "state": "partial", + "scanned_count": 10, + "complete_repo_count": 10, + "partial_repo_count": 6, + "stale_count": 2, + "unknown_count": 22, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "provider_observed_counts": { + "dependabot": 16, + "code_scanning": 10, + "secret_scanning": 10 + }, + "provider_zero_finding_counts": { + "dependabot": 0, + "code_scanning": 6, + "secret_scanning": 9 + }, + "remote_default_branch_counts": { + "observed": 16, + "partial": 0, + "stale": 2, + "credential_unavailable": 0, + "forbidden": 0, + "not_found": 0, + "rate_limited": 0, + "transient_error": 0, + "malformed": 0, + "not_requested": 0, + "unknown": 22 + }, + "project_count": 40 + }, + { + "source": "notion", + "state": "unknown", + "observed_count": 0 + } + ], + "exclusions": { + "policy_version": "workspace_discovery.v2", + "counts": {} }, + "workspace_root": "/demo-workspace", "source_summary": { "workspace_root": "/demo-workspace", "project_count": 40, @@ -17,1318 +100,2509 @@ "catalog_warnings": [], "legacy_registry_rows": 40, "notion_context_rows": 0, - "notion_context_carried_forward": 0, + "notion_context_carried_forward": false, "context_quality_counts": { + "none": 8, "full": 8, "standard": 8, "minimum-viable": 8, - "boilerplate": 8, - "none": 8 + "boilerplate": 8 }, "activity_status_counts": { + "stale": 19, "active": 9, - "recent": 12, - "stale": 19 + "recent": 12 }, + "archived_count": 8, "attention_state_counts": { - "active-product": 3, - "decision-needed": 3, - "active-infra": 4, - "manual-only": 7, + "archived": 8, + "decision-needed": 13, "experiment": 8, - "parked": 7, - "archived": 8 + "parked": 6, + "manual-only": 5 }, - "archived_count": 8, "github_archived_count": 0, "duplicate_display_names": [], "unresolved_duplicate_display_names": [] }, "precedence_matrix": { - "identity": [ - "demo fixture" + "declared.owner": [ + "catalog_repo", + "catalog_group" + ], + "declared.team": [ + "catalog_repo", + "catalog_group" + ], + "declared.purpose": [ + "catalog_repo", + "catalog_group" + ], + "declared.lifecycle_state": [ + "catalog_repo", + "catalog_group" + ], + "declared.criticality": [ + "catalog_repo", + "catalog_group" + ], + "declared.review_cadence": [ + "catalog_repo", + "catalog_group" + ], + "declared.intended_disposition": [ + "catalog_repo", + "catalog_group" + ], + "declared.maturity_program": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.target_maturity": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.operating_path": [ + "normalized" + ], + "declared.category": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "declared.tool_provenance": [ + "catalog_repo", + "catalog_group", + "inference", + "legacy_registry" + ], + "declared.notes": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "derived.stack": [ + "workspace", + "legacy_registry" + ], + "derived.context_quality": [ + "workspace", + "catalog_repo", + "catalog_group" + ], + "derived.context_files": [ + "workspace" ], - "declared": [ - "demo fixture" + "derived.primary_context_file": [ + "workspace" ], - "derived": [ - "demo fixture" + "derived.project_summary_present": [ + "workspace" ], - "risk": [ - "demo fixture" + "derived.current_state_present": [ + "workspace" ], - "security": [ - "demo fixture receipt" + "derived.stack_present": [ + "workspace" + ], + "derived.run_instructions_present": [ + "workspace" + ], + "derived.known_risks_present": [ + "workspace" + ], + "derived.next_recommended_move_present": [ + "workspace" + ], + "derived.last_meaningful_activity_at": [ + "git", + "workspace" + ], + "derived.activity_status": [ + "derived" + ], + "derived.archived": [ + "derived" + ], + "derived.attention_state": [ + "derived" + ], + "derived.path_override": [ + "normalized" + ], + "derived.path_confidence": [ + "normalized" + ], + "derived.path_rationale": [ + "normalized" + ], + "derived.has_tests": [ + "workspace" + ], + "derived.has_ci": [ + "workspace" + ], + "derived.readme_char_count": [ + "workspace" ] }, - "coverage": [ - { - "source": "workspace", - "state": "observed", - "project_count": 40 - }, - { - "source": "github_security", - "state": "partial", - "project_count": 40, - "complete_repo_count": 10, - "partial_repo_count": 6, - "stale_count": 2, - "unknown_count": 22 - } - ], - "exclusions": [], - "inputs": [], "warnings": [], "projects": [ { "identity": { - "project_key": "flagship/aurora-ledger", - "repo_full_name": "demo-org/aurora-ledger", - "display_name": "Aurora Ledger", - "path": "flagship/aurora-ledger", - "section_marker": "flagship/", + "project_key": "archive/gossamer-ridge", + "display_name": "Gossamer Ridge", + "path": "archive/gossamer-ridge", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/gossamer-ridge", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "TypeScript", - "Next.js" + "Python" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-09T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 900, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5284, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "10 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 7, - "medium": 2, - "low": 3 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 7, - "dependabot_medium": 2, - "dependabot_low": 3, - "code_scanning_critical": 0, - "code_scanning_high": 2, - "secret_scanning_open": 0, - "open_high_critical": 10 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "flagship/basalt-relay", - "repo_full_name": "demo-org/basalt-relay", - "display_name": "Basalt Relay", - "path": "flagship/basalt-relay", - "section_marker": "flagship/", - "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", - "default_branch": "main" }, - "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", - "owner": "demo-operator", + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/gossamer-ridge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/hollow-tessera", + "display_name": "Hollow Tessera", + "path": "archive/hollow-tessera", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/hollow-tessera", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "Rust", - "Tauri 2" + "JavaScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-09T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1037, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5421, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "5 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 4, - "medium": 1, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 0, - "dependabot_high": 4, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 5 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/hollow-tessera", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/cinder-atlas", - "repo_full_name": "demo-org/cinder-atlas", - "display_name": "Cinder Atlas", - "path": "flagship/cinder-atlas", - "section_marker": "flagship/", + "project_key": "archive/indigo-palisade", + "display_name": "Indigo Palisade", + "path": "archive/indigo-palisade", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/indigo-palisade", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "FastAPI" + "Go" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-09T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1174, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is finish from explicit operating path." - }, - "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "7 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": false, - "context_risk": true, - "path_risk": true - }, - "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 2, - "high": 4, - "medium": 0, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 1 - }, - "zero_findings": false - } - }, - "dependabot_critical": 2, - "dependabot_high": 4, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 1, - "code_scanning_high": 0, - "secret_scanning_open": 1, - "open_high_critical": 7 + "has_ci": false, + "has_license": false, + "readme_char_count": 5558, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/indigo-palisade", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/dovetail-forge", - "repo_full_name": "demo-org/dovetail-forge", - "display_name": "Dovetail Forge", - "path": "platform/dovetail-forge", - "section_marker": "platform/", + "project_key": "archive/jetty-marquee", + "display_name": "Jetty Marquee", + "path": "archive/jetty-marquee", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/jetty-marquee", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-09T22:50:13.825998+00:00", - "has_tests": true, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1311, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 5695, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "3 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 3, - "medium": 2, - "low": 4 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/jetty-marquee", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 3, - "dependabot_medium": 2, - "dependabot_low": 4, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 3 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "platform/ember-conduit", - "repo_full_name": "demo-org/ember-conduit", - "display_name": "Ember Conduit", - "path": "platform/ember-conduit", - "section_marker": "platform/", + "project_key": "archive/kindling-arbor", + "display_name": "Kindling Arbor", + "path": "archive/kindling-arbor", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/kindling-arbor", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "C++" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-09T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1448, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5832, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "3 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 3, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/kindling-arbor", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 3, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 3 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C++" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/lattice-bezel", + "display_name": "Lattice Bezel", + "path": "archive/lattice-bezel", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/lattice-bezel", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "Swift" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": false, + "has_license": false, + "readme_char_count": 5969, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/lattice-bezel", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/fathom-beacon", - "repo_full_name": "demo-org/fathom-beacon", - "display_name": "Fathom Beacon", - "path": "platform/fathom-beacon", - "section_marker": "platform/", + "project_key": "archive/mica-turnstile", + "display_name": "Mica Turnstile", + "path": "archive/mica-turnstile", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/mica-turnstile", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-infra", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "Node" + "Rust" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-20T22:50:13.825998+00:00", - "has_tests": true, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1585, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 6106, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "1 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/mica-turnstile", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 1 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/glacier-quill", - "repo_full_name": "demo-org/glacier-quill", - "display_name": "Glacier Quill", - "path": "studio/glacier-quill", - "section_marker": "studio/", + "project_key": "archive/nocturne-spar", + "display_name": "Nocturne Spar", + "path": "archive/nocturne-spar", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/nocturne-spar", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Swift", - "SwiftUI" + "TypeScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-09T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1722, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 6243, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "7 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 5, - "medium": 3, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 5, - "dependabot_medium": 3, - "dependabot_low": 1, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 7 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/nocturne-spar", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/harbor-lantern", - "repo_full_name": "demo-org/harbor-lantern", - "display_name": "Harbor Lantern", - "path": "studio/harbor-lantern", - "section_marker": "studio/", + "project_key": "flagship/aurora-ledger", + "display_name": "Aurora Ledger", + "path": "flagship/aurora-ledger", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/aurora-ledger", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-product", - "activity_status": "recent", - "archived": false, "stack": [ "TypeScript", - "React" + "Next.js" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-20T22:50:13.825998+00:00", + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-11T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1859, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is operate from explicit operating path." + "readme_char_count": 900, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "2 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1337,68 +2611,68 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 2, - "medium": 1, - "low": 2 + "critical": 1, + "high": 7, + "medium": 2, + "low": 3 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 2, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1406,97 +2680,293 @@ "zero_findings": true } }, - "dependabot_critical": 0, - "dependabot_high": 2, - "dependabot_medium": 1, - "dependabot_low": 2, + "dependabot_critical": 1, + "dependabot_high": 7, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 2, "secret_scanning_open": 0, - "open_high_critical": 2 + "open_high_critical": 8 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "studio", + "legacy_context_quality": "full", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/aurora-ledger", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Next.js" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/ivory-sextant", - "repo_full_name": "demo-org/ivory-sextant", - "display_name": "Ivory Sextant", - "path": "platform/ivory-sextant", - "section_marker": "platform/", + "project_key": "flagship/basalt-relay", + "display_name": "Basalt Relay", + "path": "flagship/basalt-relay", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/basalt-relay", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Python" + "Rust", + "Tauri 2" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-20T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-11T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1996, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1037, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "2 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1505,26 +2975,26 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 2, + "high": 4, "medium": 1, "low": 0 }, @@ -1533,40 +3003,40 @@ "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 1, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1575,95 +3045,291 @@ } }, "dependabot_critical": 0, - "dependabot_high": 2, + "dependabot_high": 4, "dependabot_medium": 1, "dependabot_low": 0, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 1, "secret_scanning_open": 0, - "open_high_critical": 2 + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/basalt-relay", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust, Tauri 2" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/juniper-kiln", - "repo_full_name": "demo-org/juniper-kiln", - "display_name": "Juniper Kiln", - "path": "studio/juniper-kiln", - "section_marker": "studio/", + "project_key": "flagship/cinder-atlas", + "display_name": "Cinder Atlas", + "path": "flagship/cinder-atlas", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/cinder-atlas", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Kotlin" + "Python", + "FastAPI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-09T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-11T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Finish from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2133, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1174, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "3 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1672,26 +3338,26 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 3, + "critical": 2, + "high": 4, "medium": 0, "low": 1 }, @@ -1700,137 +3366,335 @@ "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, + "critical": 1, "high": 0, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "open": 0 + "open": 1 }, - "zero_findings": true + "zero_findings": false } }, - "dependabot_critical": 0, - "dependabot_high": 3, + "dependabot_critical": 2, + "dependabot_high": 4, "dependabot_medium": 0, "dependabot_low": 1, - "code_scanning_critical": 0, + "code_scanning_critical": 1, "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 3 + "secret_scanning_open": 1, + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "minimum-viable", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/cinder-atlas", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, FastAPI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/kestrel-loom", - "repo_full_name": "demo-org/kestrel-loom", - "display_name": "Kestrel Loom", - "path": "studio/kestrel-loom", - "section_marker": "studio/", + "project_key": "flagship/meridian-vault", + "display_name": "Meridian Vault", + "path": "flagship/meridian-vault", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/meridian-vault", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "recent", - "archived": false, "stack": [ - "Ruby" + "Python", + "Django" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-20T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-11T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2270, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "readme_char_count": 2544, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "5 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -1839,28 +3703,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, "high": 5, - "medium": 1, - "low": 0 + "medium": 4, + "low": 1 }, "zero_findings": false }, @@ -1877,7 +3741,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -1895,7 +3759,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -1903,256 +3767,1149 @@ }, "dependabot_critical": 0, "dependabot_high": 5, - "dependabot_medium": 1, - "dependabot_low": 0, + "dependabot_medium": 4, + "dependabot_low": 1, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 5 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "full", + "legacy_category": "flagship", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/meridian-vault", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, Django" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/bramble-cistern", + "display_name": "Bramble Cistern", + "path": "lab/bramble-cistern", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/bramble-cistern", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "R" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4599, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 5 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/bramble-cistern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "R" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/lumen-ferry", - "repo_full_name": "demo-org/lumen-ferry", - "display_name": "Lumen Ferry", - "path": "platform/lumen-ferry", - "section_marker": "platform/", + "project_key": "lab/dusk-pergola", + "display_name": "Dusk Pergola", + "path": "lab/dusk-pergola", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/dusk-pergola", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Go" + "OCaml" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-20T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 2407, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 4873, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "3 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", - "providers": { - "dependabot": { + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/dusk-pergola", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 2, - "medium": 0, - "low": 2 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" }, - "dependabot_critical": 1, - "dependabot_high": 2, - "dependabot_medium": 0, - "dependabot_low": 2, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "OCaml" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/foxglove-mast", + "display_name": "Foxglove Mast", + "path": "lab/foxglove-mast", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/foxglove-mast", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "Nim" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-22T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 5147, + "release_count": 0 + }, + "risk": { + "risk_tier": "elevated", + "risk_factors": [ + "weak-context-active", + "investigate-override", + "no-run-instructions" + ], + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 3 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", + "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "platform", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/foxglove-mast", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-22T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Nim" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/meridian-vault", - "repo_full_name": "demo-org/meridian-vault", - "display_name": "Meridian Vault", - "path": "flagship/meridian-vault", - "section_marker": "flagship/", + "project_key": "lab/onyx-placard", + "display_name": "Onyx Placard", + "path": "lab/onyx-placard", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/onyx-placard", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "Django" + "Elixir" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-09T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-22T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Experiment from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2544, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2818, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "5 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -2161,28 +4918,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 5, - "medium": 4, - "low": 1 + "high": 2, + "medium": 0, + "low": 0 }, "zero_findings": false }, @@ -2199,7 +4956,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2217,103 +4974,300 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 5, - "dependabot_medium": 4, - "dependabot_low": 1, + "dependabot_high": 2, + "dependabot_medium": 0, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 5 + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_context_quality": "minimum-viable", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/onyx-placard", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-22T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Elixir" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/nimbus-charter", - "repo_full_name": "demo-org/nimbus-charter", - "display_name": "Nimbus Charter", - "path": "studio/nimbus-charter", - "section_marker": "studio/", + "project_key": "lab/pallas-runner", + "display_name": "Pallas Runner", + "path": "lab/pallas-runner", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/pallas-runner", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "JavaScript" + "Rust" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-07-11T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 2681, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2955, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "2 open high/critical security alerts", - "no meaningful activity in the recent window" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, @@ -2322,28 +5276,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 2, - "medium": 2, - "low": 3 + "high": 3, + "medium": 1, + "low": 1 }, "zero_findings": false }, @@ -2360,7 +5314,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2378,434 +5332,1226 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-13T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 2, - "dependabot_medium": 2, - "dependabot_low": 3, + "dependabot_high": 3, + "dependabot_medium": 1, + "dependabot_low": 1, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 2 + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/pallas-runner", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/onyx-placard", - "repo_full_name": "demo-org/onyx-placard", - "display_name": "Onyx Placard", - "path": "lab/onyx-placard", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/quartz-signal", + "display_name": "Quartz Signal", + "path": "lab/quartz-signal", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/quartz-signal", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Elixir" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-20T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2818, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3092, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "2 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", + "coverage_state": "stale", "cohort_member": true, "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", + "receipt_state": "stale", + "source_produced_at": "2026-07-12T21:09:43.833784+00:00", "providers": { "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", + "observed_at": "2026-07-12T21:09:43.833784+00:00", "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "medium": 0, - "low": 0 - }, - "zero_findings": false + "counts": null, + "zero_findings": null }, "code_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-07-12T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null }, "secret_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-07-12T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null } }, - "dependabot_critical": 0, - "dependabot_high": 2, - "dependabot_medium": 0, - "dependabot_low": 0, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-07-12T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/quartz-signal", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/solstice-cairn", + "display_name": "Solstice Cairn", + "path": "lab/solstice-cairn", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/solstice-cairn", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "C" + ], + "context_quality": "minimum-viable", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-22T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3366, + "release_count": 0 + }, + "risk": { + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 2 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", + "legacy_status": "manual-only", "legacy_context_quality": "minimum-viable", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/solstice-cairn", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-22T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/pallas-runner", - "repo_full_name": "demo-org/pallas-runner", - "display_name": "Pallas Runner", - "path": "lab/pallas-runner", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/tabard-anvil", + "display_name": "Tabard Anvil", + "path": "lab/tabard-anvil", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/tabard-anvil", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "Zig" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-09T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-22T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 2955, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3503, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "3 open high/critical security alerts", - "no CI workflow", - "thin project context" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": true, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", - "providers": { - "dependabot": { + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/tabard-anvil", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 3, - "medium": 1, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-11T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-22T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Zig" }, - "dependabot_critical": 0, - "dependabot_high": 3, - "dependabot_medium": 1, - "dependabot_low": 1, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 3 + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "lab/quartz-signal", - "repo_full_name": "demo-org/quartz-signal", - "display_name": "Quartz Signal", - "path": "lab/quartz-signal", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/vellum-compass", + "display_name": "Vellum Compass", + "path": "lab/vellum-compass", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/vellum-compass", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Python" + "Haskell" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 3092, - "release_count": 0, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 3777, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", - "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2820,93 +6566,281 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", + "legacy_status": "active", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/vellum-compass", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Haskell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/rialto-pennant", - "repo_full_name": "demo-org/rialto-pennant", - "display_name": "Rialto Pennant", - "path": "studio/rialto-pennant", - "section_marker": "studio/", + "project_key": "lab/xenon-parapet", + "display_name": "Xenon Parapet", + "path": "lab/xenon-parapet", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/xenon-parapet", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, "stack": [ - "TypeScript" + "Shell" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-22T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3229, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4051, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-07-11T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2922,83 +6856,268 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/xenon-parapet", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-22T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Shell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/solstice-cairn", - "repo_full_name": "demo-org/solstice-cairn", - "display_name": "Solstice Cairn", - "path": "lab/solstice-cairn", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/zephyr-bastion", + "display_name": "Zephyr Bastion", + "path": "lab/zephyr-bastion", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/zephyr-bastion", "default_branch": "main" }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", + "declared": { "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "C" + "Perl" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-20T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": false, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3366, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4325, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3023,101 +7142,357 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "minimum-viable", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/zephyr-bastion", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Perl" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/tabard-anvil", - "repo_full_name": "demo-org/tabard-anvil", - "display_name": "Tabard Anvil", - "path": "lab/tabard-anvil", - "section_marker": "lab/", + "project_key": "platform/dovetail-forge", + "display_name": "Dovetail Forge", + "path": "platform/dovetail-forge", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/dovetail-forge", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Zig" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-20T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-11T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": false, + "has_ci": true, "has_license": true, - "readme_char_count": 3503, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1311, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 3, + "medium": 2, + "low": 4 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 3, + "dependabot_medium": 2, + "dependabot_low": 4, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", @@ -3125,900 +7500,1725 @@ "notion_current_state": "", "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/dovetail-forge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/umbra-trellis", - "repo_full_name": "demo-org/umbra-trellis", - "display_name": "Umbra Trellis", - "path": "studio/umbra-trellis", - "section_marker": "studio/", + "project_key": "platform/ember-conduit", + "display_name": "Ember Conduit", + "path": "platform/ember-conduit", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ember-conduit", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Lua" + "Rust" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-07-11T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3640, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1448, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 3, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 3, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "active", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/vellum-compass", - "repo_full_name": "demo-org/vellum-compass", - "display_name": "Vellum Compass", - "path": "lab/vellum-compass", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "Haskell" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 3777, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ember-conduit", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/wicker-obelisk", - "repo_full_name": "demo-org/wicker-obelisk", - "display_name": "Wicker Obelisk", - "path": "studio/wicker-obelisk", - "section_marker": "studio/", + "project_key": "platform/fathom-beacon", + "display_name": "Fathom Beacon", + "path": "platform/fathom-beacon", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/fathom-beacon", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "PHP" + "TypeScript", + "Node" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-22T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3914, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1585, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 1, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 1 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/xenon-parapet", - "repo_full_name": "demo-org/xenon-parapet", - "display_name": "Xenon Parapet", - "path": "lab/xenon-parapet", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, - "stack": [ - "Shell" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-20T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4051, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/fathom-beacon", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-22T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Node" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/yarrow-spindle", - "repo_full_name": "demo-org/yarrow-spindle", - "display_name": "Yarrow Spindle", - "path": "studio/yarrow-spindle", - "section_marker": "studio/", + "project_key": "platform/ivory-sextant", + "display_name": "Ivory Sextant", + "path": "platform/ivory-sextant", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ivory-sextant", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Java" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-22T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4188, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1996, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 2, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 2, + "dependabot_medium": 1, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "manual-only", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/zephyr-bastion", - "repo_full_name": "demo-org/zephyr-bastion", - "display_name": "Zephyr Bastion", - "path": "lab/zephyr-bastion", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, - "stack": [ - "Perl" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 4325, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ivory-sextant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-22T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/amber-thicket", - "repo_full_name": "demo-org/amber-thicket", - "display_name": "Amber Thicket", - "path": "studio/amber-thicket", - "section_marker": "studio/", + "project_key": "platform/lumen-ferry", + "display_name": "Lumen Ferry", + "path": "platform/lumen-ferry", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/lumen-ferry", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "recent", - "archived": false, "stack": [ - "Dart", - "Flutter" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-20T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-22T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4462, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2407, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 2, + "medium": 0, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 1, + "dependabot_high": 2, + "dependabot_medium": 0, + "dependabot_low": 2, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/bramble-cistern", - "repo_full_name": "demo-org/bramble-cistern", - "display_name": "Bramble Cistern", - "path": "lab/bramble-cistern", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "R" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 4599, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": false, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/lumen-ferry", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-22T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/cobalt-wharf", - "repo_full_name": "demo-org/cobalt-wharf", - "display_name": "Cobalt Wharf", - "path": "studio/cobalt-wharf", - "section_marker": "studio/", - "has_git": true, + "project_key": "studio/amber-thicket", + "display_name": "Amber Thicket", + "path": "studio/amber-thicket", "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/amber-thicket", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Scala" + "Dart", + "Flutter" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-20T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4736, - "release_count": 0, + "last_meaningful_activity_at": "2026-06-22T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 4462, + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, - "doctor_gap": true, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4042,86 +9242,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/amber-thicket", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-22T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Dart, Flutter" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/dusk-pergola", - "repo_full_name": "demo-org/dusk-pergola", - "display_name": "Dusk Pergola", - "path": "lab/dusk-pergola", - "section_marker": "lab/", + "project_key": "studio/cobalt-wharf", + "display_name": "Cobalt Wharf", + "path": "studio/cobalt-wharf", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/cobalt-wharf", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "OCaml" + "Scala" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-22T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 4873, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 4736, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4145,84 +9529,268 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", + "legacy_status": "manual-only", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/cobalt-wharf", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-22T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Scala" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { "project_key": "studio/errant-fathom", - "repo_full_name": "demo-org/errant-fathom", "display_name": "Errant Fathom", "path": "studio/errant-fathom", - "section_marker": "studio/", - "has_git": true, "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/errant-fathom", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ "TypeScript" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, "readme_char_count": 5010, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4250,593 +9818,2133 @@ "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/errant-fathom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/foxglove-mast", - "repo_full_name": "demo-org/foxglove-mast", - "display_name": "Foxglove Mast", - "path": "lab/foxglove-mast", - "section_marker": "lab/", + "project_key": "studio/glacier-quill", + "display_name": "Glacier Quill", + "path": "studio/glacier-quill", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/glacier-quill", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Nim" + "Swift", + "SwiftUI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-20T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 5147, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-11T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1722, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 5, + "medium": 3, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "note": 0, + "warning": 0 + }, + "zero_findings": false + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 1, + "dependabot_high": 5, + "dependabot_medium": 3, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 1, + "secret_scanning_open": 0, + "open_high_critical": 6 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/glacier-quill", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift, SwiftUI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "archive/gossamer-ridge", - "repo_full_name": "demo-org/gossamer-ridge", - "display_name": "Gossamer Ridge", - "path": "archive/gossamer-ridge", - "section_marker": "archive/", + "project_key": "studio/harbor-lantern", + "display_name": "Harbor Lantern", + "path": "studio/harbor-lantern", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/harbor-lantern", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Python" + "TypeScript", + "React" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5284, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "last_meaningful_activity_at": "2026-06-22T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1859, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 2, + "medium": 1, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 2, + "dependabot_medium": 1, + "dependabot_low": 2, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/harbor-lantern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-22T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, React" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/hollow-tessera", - "repo_full_name": "demo-org/hollow-tessera", - "display_name": "Hollow Tessera", - "path": "archive/hollow-tessera", - "section_marker": "archive/", + "project_key": "studio/juniper-kiln", + "display_name": "Juniper Kiln", + "path": "studio/juniper-kiln", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/juniper-kiln", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "JavaScript" + "Kotlin" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5421, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-11T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2133, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 3, + "medium": 0, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 3, + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/juniper-kiln", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Kotlin" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/indigo-palisade", - "repo_full_name": "demo-org/indigo-palisade", - "display_name": "Indigo Palisade", - "path": "archive/indigo-palisade", - "section_marker": "archive/", + "project_key": "studio/kestrel-loom", + "display_name": "Kestrel Loom", + "path": "studio/kestrel-loom", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/kestrel-loom", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5558, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-22T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2270, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 5, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 5, + "dependabot_medium": 1, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/kestrel-loom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-22T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/jetty-marquee", - "repo_full_name": "demo-org/jetty-marquee", - "display_name": "Jetty Marquee", - "path": "archive/jetty-marquee", - "section_marker": "archive/", + "project_key": "studio/nimbus-charter", + "display_name": "Nimbus Charter", + "path": "studio/nimbus-charter", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/nimbus-charter", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Ruby" + "JavaScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 5695, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "decision-needed", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2681, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-13T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 2, + "medium": 2, + "low": 3 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 2, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/nimbus-charter", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/kindling-arbor", - "repo_full_name": "demo-org/kindling-arbor", - "display_name": "Kindling Arbor", - "path": "archive/kindling-arbor", - "section_marker": "archive/", + "project_key": "studio/rialto-pennant", + "display_name": "Rialto Pennant", + "path": "studio/rialto-pennant", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/rialto-pennant", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "C++" + "TypeScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5832, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3229, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, + "coverage_state": "stale", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "stale", + "source_produced_at": "2026-07-12T21:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-12T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "code_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-12T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-12T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + } + }, "dependabot_critical": null, "dependabot_high": null, "dependabot_medium": null, @@ -4850,83 +11958,275 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "manual-only", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-07-12T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/rialto-pennant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/lattice-bezel", - "repo_full_name": "demo-org/lattice-bezel", - "display_name": "Lattice Bezel", - "path": "archive/lattice-bezel", - "section_marker": "archive/", + "project_key": "studio/umbra-trellis", + "display_name": "Umbra Trellis", + "path": "studio/umbra-trellis", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/umbra-trellis", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Swift" + "Lua" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5969, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3640, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4946,87 +12246,272 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/umbra-trellis", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Lua" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/mica-turnstile", - "repo_full_name": "demo-org/mica-turnstile", - "display_name": "Mica Turnstile", - "path": "archive/mica-turnstile", - "section_marker": "archive/", + "project_key": "studio/wicker-obelisk", + "display_name": "Wicker Obelisk", + "path": "studio/wicker-obelisk", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/wicker-obelisk", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Rust" + "PHP" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 6106, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3914, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5050,84 +12535,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/wicker-obelisk", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "PHP" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/nocturne-spar", - "repo_full_name": "demo-org/nocturne-spar", - "display_name": "Nocturne Spar", - "path": "archive/nocturne-spar", - "section_marker": "archive/", + "project_key": "studio/yarrow-spindle", + "display_name": "Yarrow Spindle", + "path": "studio/yarrow-spindle", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/yarrow-spindle", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "TypeScript" + "Java" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-02T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 6243, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-04T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4188, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5151,34 +12822,238 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-13T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/yarrow-spindle", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-04T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Java" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] } ], "rollups": { "risk_tier_counts": { - "elevated": 16, - "moderate": 12, - "baseline": 4, - "deferred": 8 + "elevated": 10, + "moderate": 9, + "baseline": 10, + "deferred": 11 }, "security": { - "coverage_state": "partial", + "scanned_count": 10, + "unavailable_count": 30, "complete_repo_count": 10, "partial_repo_count": 6, "stale_count": 2, "unknown_count": 22, - "scanned_count": 10, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "dependabot_observed_count": 16, + "code_scanning_observed_count": 10, + "secret_scanning_observed_count": 10, + "dependabot_zero_finding_count": 0, + "code_scanning_zero_finding_count": 6, + "secret_scanning_zero_finding_count": 9, + "remote_default_branch_observed_count": 16, + "remote_default_branch_partial_count": 0, + "remote_default_branch_stale_count": 2, + "remote_default_branch_unavailable_count": 22, + "coverage_state": "partial", "repos_with_open_high_critical": 16, "total_open_high": 53, "total_open_critical": 5 }, "decision": { - "decision_needed_count": 3, - "default_attention_count": 10 + "decision_needed_count": 13, + "default_attention_count": 13 } } } \ No newline at end of file diff --git a/output/demo/portfolio-truth-history-07.json b/output/demo/portfolio-truth-history-07.json index 320e7020..160dec39 100644 --- a/output/demo/portfolio-truth-history-07.json +++ b/output/demo/portfolio-truth-history-07.json @@ -1,15 +1,98 @@ { "schema_version": "0.11.0", + "generated_at": "2026-07-20T22:09:43.833784+00:00", "derivation_policy_version": "portfolio_attention.v3", - "generated_at": "2026-07-18T22:50:13.825998+00:00", - "workspace_root": "/demo-workspace", - "producer": { - "repository": "demo-org/portfolio-auditor", - "checkout_role": "demo-fixture", - "worktree_clean": true, - "dirty_path_count": 0, - "verified_at": "2026-07-18T22:50:13.825998+00:00" + "producer": {}, + "inputs": { + "catalog": { + "source_id": "portfolio-catalog", + "sha256": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00" + }, + "workspace": { + "source_id": "projects-root", + "observed_at": "2026-07-20T22:09:43.833784+00:00" + }, + "notion": { + "mode": "unavailable", + "observed_at": null, + "carried_from_generated_at": null + }, + "github_security": { + "source_id": "github-security-coverage-receipt", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "produced_at": "2026-07-20T22:09:43.833784+00:00", + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 18, + "path": "/demo-workspace/github-security-coverage.json", + "receipt_id": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", + "content_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" + } + }, + "coverage": [ + { + "source": "workspace", + "state": "observed", + "project_count": 40 + }, + { + "source": "git", + "state": "observed", + "observed_count": 40, + "project_count": 40 + }, + { + "source": "github_security", + "state": "partial", + "scanned_count": 10, + "complete_repo_count": 10, + "partial_repo_count": 6, + "stale_count": 2, + "unknown_count": 22, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "provider_observed_counts": { + "dependabot": 16, + "code_scanning": 10, + "secret_scanning": 10 + }, + "provider_zero_finding_counts": { + "dependabot": 1, + "code_scanning": 6, + "secret_scanning": 9 + }, + "remote_default_branch_counts": { + "observed": 16, + "partial": 0, + "stale": 2, + "credential_unavailable": 0, + "forbidden": 0, + "not_found": 0, + "rate_limited": 0, + "transient_error": 0, + "malformed": 0, + "not_requested": 0, + "unknown": 22 + }, + "project_count": 40 + }, + { + "source": "notion", + "state": "unknown", + "observed_count": 0 + } + ], + "exclusions": { + "policy_version": "workspace_discovery.v2", + "counts": {} }, + "workspace_root": "/demo-workspace", "source_summary": { "workspace_root": "/demo-workspace", "project_count": 40, @@ -17,1484 +100,2510 @@ "catalog_warnings": [], "legacy_registry_rows": 40, "notion_context_rows": 0, - "notion_context_carried_forward": 0, + "notion_context_carried_forward": false, "context_quality_counts": { + "none": 8, "full": 8, "standard": 8, "minimum-viable": 8, - "boilerplate": 8, - "none": 8 + "boilerplate": 8 }, "activity_status_counts": { + "stale": 19, "active": 9, - "recent": 12, - "stale": 19 + "recent": 12 }, + "archived_count": 8, "attention_state_counts": { - "active-product": 3, - "decision-needed": 3, - "active-infra": 4, - "manual-only": 7, + "archived": 8, + "decision-needed": 12, "experiment": 8, - "parked": 7, - "archived": 8 + "parked": 6, + "manual-only": 5, + "active-infra": 1 }, - "archived_count": 8, "github_archived_count": 0, "duplicate_display_names": [], "unresolved_duplicate_display_names": [] }, "precedence_matrix": { - "identity": [ - "demo fixture" + "declared.owner": [ + "catalog_repo", + "catalog_group" + ], + "declared.team": [ + "catalog_repo", + "catalog_group" + ], + "declared.purpose": [ + "catalog_repo", + "catalog_group" + ], + "declared.lifecycle_state": [ + "catalog_repo", + "catalog_group" + ], + "declared.criticality": [ + "catalog_repo", + "catalog_group" + ], + "declared.review_cadence": [ + "catalog_repo", + "catalog_group" + ], + "declared.intended_disposition": [ + "catalog_repo", + "catalog_group" + ], + "declared.maturity_program": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.target_maturity": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.operating_path": [ + "normalized" + ], + "declared.category": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "declared.tool_provenance": [ + "catalog_repo", + "catalog_group", + "inference", + "legacy_registry" + ], + "declared.notes": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "derived.stack": [ + "workspace", + "legacy_registry" + ], + "derived.context_quality": [ + "workspace", + "catalog_repo", + "catalog_group" + ], + "derived.context_files": [ + "workspace" ], - "declared": [ - "demo fixture" + "derived.primary_context_file": [ + "workspace" ], - "derived": [ - "demo fixture" + "derived.project_summary_present": [ + "workspace" ], - "risk": [ - "demo fixture" + "derived.current_state_present": [ + "workspace" ], - "security": [ - "demo fixture receipt" + "derived.stack_present": [ + "workspace" + ], + "derived.run_instructions_present": [ + "workspace" + ], + "derived.known_risks_present": [ + "workspace" + ], + "derived.next_recommended_move_present": [ + "workspace" + ], + "derived.last_meaningful_activity_at": [ + "git", + "workspace" + ], + "derived.activity_status": [ + "derived" + ], + "derived.archived": [ + "derived" + ], + "derived.attention_state": [ + "derived" + ], + "derived.path_override": [ + "normalized" + ], + "derived.path_confidence": [ + "normalized" + ], + "derived.path_rationale": [ + "normalized" + ], + "derived.has_tests": [ + "workspace" + ], + "derived.has_ci": [ + "workspace" + ], + "derived.readme_char_count": [ + "workspace" ] }, - "coverage": [ - { - "source": "workspace", - "state": "observed", - "project_count": 40 - }, - { - "source": "github_security", - "state": "partial", - "project_count": 40, - "complete_repo_count": 10, - "partial_repo_count": 6, - "stale_count": 2, - "unknown_count": 22 - } - ], - "exclusions": [], - "inputs": [], "warnings": [], "projects": [ { "identity": { - "project_key": "flagship/aurora-ledger", - "repo_full_name": "demo-org/aurora-ledger", - "display_name": "Aurora Ledger", - "path": "flagship/aurora-ledger", - "section_marker": "flagship/", + "project_key": "archive/gossamer-ridge", + "display_name": "Gossamer Ridge", + "path": "archive/gossamer-ridge", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/gossamer-ridge", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "TypeScript", - "Next.js" + "Python" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-16T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 900, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5284, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "9 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 6, - "medium": 2, - "low": 3 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 6, - "dependabot_medium": 2, - "dependabot_low": 3, - "code_scanning_critical": 0, - "code_scanning_high": 2, - "secret_scanning_open": 0, - "open_high_critical": 9 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "flagship/basalt-relay", - "repo_full_name": "demo-org/basalt-relay", - "display_name": "Basalt Relay", - "path": "flagship/basalt-relay", - "section_marker": "flagship/", - "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", - "default_branch": "main" }, - "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", - "owner": "demo-operator", - "team": "", - "criticality": "high", - "review_cadence": "weekly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, - "stack": [ - "Rust", - "Tauri 2" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-16T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1037, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." - }, - "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "4 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": false, - "context_risk": false, - "path_risk": false - }, - "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 3, - "medium": 1, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/gossamer-ridge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 3, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 4 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "flagship", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "flagship/cinder-atlas", - "repo_full_name": "demo-org/cinder-atlas", - "display_name": "Cinder Atlas", - "path": "flagship/cinder-atlas", - "section_marker": "flagship/", + "project_key": "archive/hollow-tessera", + "display_name": "Hollow Tessera", + "path": "archive/hollow-tessera", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/hollow-tessera", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "FastAPI" + "JavaScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-16T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1174, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is finish from explicit operating path." + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5421, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "6 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 2, - "high": 3, - "medium": 0, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 1 - }, - "zero_findings": false - } - }, - "dependabot_critical": 2, - "dependabot_high": 3, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 1, - "code_scanning_high": 0, - "secret_scanning_open": 1, - "open_high_critical": 6 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "platform/dovetail-forge", - "repo_full_name": "demo-org/dovetail-forge", - "display_name": "Dovetail Forge", - "path": "platform/dovetail-forge", - "section_marker": "platform/", - "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, - "stack": [ - "Go" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-16T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1311, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "2 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": false, - "context_risk": true, - "path_risk": false - }, - "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "medium": 2, - "low": 4 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/hollow-tessera", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" }, - "dependabot_critical": 0, - "dependabot_high": 2, - "dependabot_medium": 2, - "dependabot_low": 4, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 2 + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "platform/ember-conduit", - "repo_full_name": "demo-org/ember-conduit", - "display_name": "Ember Conduit", - "path": "platform/ember-conduit", - "section_marker": "platform/", + "project_key": "archive/indigo-palisade", + "display_name": "Indigo Palisade", + "path": "archive/indigo-palisade", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/indigo-palisade", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "Go" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-16T22:50:13.825998+00:00", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1448, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_ci": false, + "has_license": false, + "readme_char_count": 5558, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "2 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/indigo-palisade", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 2, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 2 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/jetty-marquee", + "display_name": "Jetty Marquee", + "path": "archive/jetty-marquee", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/jetty-marquee", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "Ruby" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": false, + "readme_char_count": 5695, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/jetty-marquee", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/fathom-beacon", - "repo_full_name": "demo-org/fathom-beacon", - "display_name": "Fathom Beacon", - "path": "platform/fathom-beacon", - "section_marker": "platform/", + "project_key": "archive/kindling-arbor", + "display_name": "Kindling Arbor", + "path": "archive/kindling-arbor", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/kindling-arbor", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-infra", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "Node" + "C++" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-27T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1585, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5832, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "deferred", "risk_factors": [], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "medium": 0, - "low": 0 - }, - "zero_findings": true - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/kindling-arbor", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" }, - "dependabot_critical": 0, - "dependabot_high": 0, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 0 + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C++" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/glacier-quill", - "repo_full_name": "demo-org/glacier-quill", - "display_name": "Glacier Quill", - "path": "studio/glacier-quill", - "section_marker": "studio/", + "project_key": "archive/lattice-bezel", + "display_name": "Lattice Bezel", + "path": "archive/lattice-bezel", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/lattice-bezel", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Swift", - "SwiftUI" + "Swift" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-16T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1722, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "has_ci": false, + "has_license": false, + "readme_char_count": 5969, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "6 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 4, - "medium": 3, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/lattice-bezel", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 1, - "dependabot_high": 4, - "dependabot_medium": 3, - "dependabot_low": 1, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 6 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/mica-turnstile", + "display_name": "Mica Turnstile", + "path": "archive/mica-turnstile", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/mica-turnstile", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "Rust" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": false, + "readme_char_count": 6106, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/mica-turnstile", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/harbor-lantern", - "repo_full_name": "demo-org/harbor-lantern", - "display_name": "Harbor Lantern", - "path": "studio/harbor-lantern", - "section_marker": "studio/", + "project_key": "archive/nocturne-spar", + "display_name": "Nocturne Spar", + "path": "archive/nocturne-spar", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/nocturne-spar", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-product", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "React" + "TypeScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-27T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1859, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is operate from explicit operating path." + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 6243, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "1 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "medium": 1, - "low": 2 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/nocturne-spar", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 1, - "dependabot_low": 2, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 1 + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "studio", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "platform/ivory-sextant", - "repo_full_name": "demo-org/ivory-sextant", - "display_name": "Ivory Sextant", - "path": "platform/ivory-sextant", - "section_marker": "platform/", + "project_key": "flagship/aurora-ledger", + "display_name": "Aurora Ledger", + "path": "flagship/aurora-ledger", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/aurora-ledger", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Python" + "TypeScript", + "Next.js" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-27T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-18T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1996, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 900, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "1 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1503,68 +2612,68 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 1, - "medium": 1, - "low": 0 + "critical": 1, + "high": 6, + "medium": 2, + "low": 3 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 2, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1572,96 +2681,293 @@ "zero_findings": true } }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 1, - "dependabot_low": 0, + "dependabot_critical": 1, + "dependabot_high": 6, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 2, "secret_scanning_open": 0, - "open_high_critical": 1 + "open_high_critical": 7 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", + "legacy_status": "active", "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/aurora-ledger", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Next.js" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/juniper-kiln", - "repo_full_name": "demo-org/juniper-kiln", - "display_name": "Juniper Kiln", - "path": "studio/juniper-kiln", - "section_marker": "studio/", + "project_key": "flagship/basalt-relay", + "display_name": "Basalt Relay", + "path": "flagship/basalt-relay", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/basalt-relay", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Kotlin" + "Rust", + "Tauri 2" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md" ], "context_file_count": 2, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-16T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-18T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2133, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1037, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "2 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1670,68 +2976,68 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 2, - "medium": 0, - "low": 1 + "high": 3, + "medium": 1, + "low": 0 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 1, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1739,174 +3045,377 @@ "zero_findings": true } }, - "dependabot_critical": 0, - "dependabot_high": 2, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 2 + "dependabot_critical": 0, + "dependabot_high": 3, + "dependabot_medium": 1, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 1, + "secret_scanning_open": 0, + "open_high_critical": 3 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "flagship", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/basalt-relay", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust, Tauri 2" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "studio", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/kestrel-loom", - "repo_full_name": "demo-org/kestrel-loom", - "display_name": "Kestrel Loom", - "path": "studio/kestrel-loom", - "section_marker": "studio/", + "project_key": "flagship/cinder-atlas", + "display_name": "Cinder Atlas", + "path": "flagship/cinder-atlas", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/cinder-atlas", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "recent", - "archived": false, "stack": [ - "Ruby" + "Python", + "FastAPI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-27T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-18T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Finish from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2270, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "readme_char_count": 1174, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "4 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "partial", + "alerts_available": true, + "coverage_state": "complete", "cohort_member": true, "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 4, - "medium": 1, - "low": 0 + "critical": 2, + "high": 3, + "medium": 0, + "low": 1 }, "zero_findings": false }, "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": false }, "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 1 + }, + "zero_findings": false } }, - "dependabot_critical": 0, - "dependabot_high": 4, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 4 + "dependabot_critical": 2, + "dependabot_high": 3, + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 1, + "code_scanning_high": 0, + "secret_scanning_open": 1, + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", @@ -1914,81 +3423,279 @@ "notion_current_state": "", "legacy_status": "active", "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/cinder-atlas", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, FastAPI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/lumen-ferry", - "repo_full_name": "demo-org/lumen-ferry", - "display_name": "Lumen Ferry", - "path": "platform/lumen-ferry", - "section_marker": "platform/", + "project_key": "flagship/meridian-vault", + "display_name": "Meridian Vault", + "path": "flagship/meridian-vault", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/meridian-vault", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Go" + "Python", + "Django" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-27T22:50:13.825998+00:00", + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-18T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2407, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2544, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "2 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -1997,28 +3704,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 1, - "high": 1, - "medium": 0, - "low": 2 + "critical": 0, + "high": 4, + "medium": 4, + "low": 1 }, "zero_findings": false }, @@ -2035,7 +3742,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2053,425 +3760,1157 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, - "dependabot_critical": 1, - "dependabot_high": 1, - "dependabot_medium": 0, - "dependabot_low": 2, + "dependabot_critical": 0, + "dependabot_high": 4, + "dependabot_medium": 4, + "dependabot_low": 1, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 2 + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "boilerplate", - "legacy_category": "platform", + "legacy_status": "active", + "legacy_context_quality": "full", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/meridian-vault", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, Django" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/meridian-vault", - "repo_full_name": "demo-org/meridian-vault", - "display_name": "Meridian Vault", - "path": "flagship/meridian-vault", - "section_marker": "flagship/", + "project_key": "lab/bramble-cistern", + "display_name": "Bramble Cistern", + "path": "lab/bramble-cistern", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/bramble-cistern", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "flagship", - "tool_provenance": "claude-code", + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "R" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4599, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/bramble-cistern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "R" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/dusk-pergola", + "display_name": "Dusk Pergola", + "path": "lab/dusk-pergola", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/dusk-pergola", + "default_branch": "main" + }, + "declared": { "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "Django" + "OCaml" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-16T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 2544, - "release_count": 3, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", "path_confidence": "high", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 4873, + "release_count": 0 }, - "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "4 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 4, - "medium": 4, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - } - }, - "dependabot_critical": 0, - "dependabot_high": 4, - "dependabot_medium": 4, - "dependabot_low": 1, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 4 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_context_quality": "standard", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/dusk-pergola", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "OCaml" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/nimbus-charter", - "repo_full_name": "demo-org/nimbus-charter", - "display_name": "Nimbus Charter", - "path": "studio/nimbus-charter", - "section_marker": "studio/", + "project_key": "lab/foxglove-mast", + "display_name": "Foxglove Mast", + "path": "lab/foxglove-mast", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/foxglove-mast", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "JavaScript" + "Nim" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": true, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-29T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, "has_license": true, - "readme_char_count": 2681, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 5147, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "1 open high/critical security alerts", - "no meaningful activity in the recent window" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "medium": 2, - "low": 3 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - } - }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 2, - "dependabot_low": 3, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 1 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/foxglove-mast", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-29T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Nim" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { "project_key": "lab/onyx-placard", - "repo_full_name": "demo-org/onyx-placard", "display_name": "Onyx Placard", "path": "lab/onyx-placard", - "section_marker": "lab/", - "has_git": true, "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/onyx-placard", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ "Elixir" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-27T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-29T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Experiment from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, "readme_char_count": 2818, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "release_count": 0 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "1 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -2480,22 +4919,22 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, @@ -2518,7 +4957,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2536,7 +4975,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2559,80 +4998,277 @@ "legacy_context_quality": "minimum-viable", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/onyx-placard", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-29T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Elixir" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { "project_key": "lab/pallas-runner", - "repo_full_name": "demo-org/pallas-runner", "display_name": "Pallas Runner", "path": "lab/pallas-runner", - "section_marker": "lab/", - "has_git": true, "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/pallas-runner", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ "Rust" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-16T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-18T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": false, "has_license": true, "readme_char_count": 2955, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "2 open high/critical security alerts", - "no CI workflow", - "thin project context" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, @@ -2641,22 +5277,22 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, @@ -2679,7 +5315,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2697,7 +5333,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-18T22:50:13.825998+00:00", + "observed_at": "2026-07-20T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2720,81 +5356,274 @@ "legacy_context_quality": "boilerplate", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/pallas-runner", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { "project_key": "lab/quartz-signal", - "repo_full_name": "demo-org/quartz-signal", "display_name": "Quartz Signal", "path": "lab/quartz-signal", - "section_marker": "lab/", - "has_git": true, "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/quartz-signal", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, "readme_char_count": 3092, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -2803,8 +5632,63 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "stale", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", - "providers": {}, + "source_produced_at": "2026-07-19T21:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-19T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "code_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-19T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-19T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + } + }, "dependabot_critical": null, "dependabot_high": null, "dependabot_medium": null, @@ -2822,89 +5706,278 @@ "legacy_context_quality": "full", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-07-19T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/quartz-signal", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/rialto-pennant", - "repo_full_name": "demo-org/rialto-pennant", - "display_name": "Rialto Pennant", - "path": "studio/rialto-pennant", - "section_marker": "studio/", + "project_key": "lab/solstice-cairn", + "display_name": "Solstice Cairn", + "path": "lab/solstice-cairn", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/solstice-cairn", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, "stack": [ - "TypeScript" + "C" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 3229, - "release_count": 0, + "last_meaningful_activity_at": "2026-06-29T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3366, + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-07-18T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2920,83 +5993,271 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "minimum-viable", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/solstice-cairn", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-29T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/solstice-cairn", - "repo_full_name": "demo-org/solstice-cairn", - "display_name": "Solstice Cairn", - "path": "lab/solstice-cairn", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/tabard-anvil", + "display_name": "Tabard Anvil", + "path": "lab/tabard-anvil", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/tabard-anvil", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "C" + "Zig" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-27T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, + "last_meaningful_activity_at": "2026-06-29T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3366, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 3503, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, @@ -3016,88 +6277,273 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "minimum-viable", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/tabard-anvil", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-29T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Zig" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/tabard-anvil", - "repo_full_name": "demo-org/tabard-anvil", - "display_name": "Tabard Anvil", - "path": "lab/tabard-anvil", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/vellum-compass", + "display_name": "Vellum Compass", + "path": "lab/vellum-compass", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/vellum-compass", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Zig" + "Haskell" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-27T22:50:13.825998+00:00", - "has_tests": true, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, "has_ci": false, "has_license": true, - "readme_char_count": 3503, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3777, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3122,85 +6568,271 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "boilerplate", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/vellum-compass", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Haskell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/umbra-trellis", - "repo_full_name": "demo-org/umbra-trellis", - "display_name": "Umbra Trellis", - "path": "studio/umbra-trellis", - "section_marker": "studio/", + "project_key": "lab/xenon-parapet", + "display_name": "Xenon Parapet", + "path": "lab/xenon-parapet", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/xenon-parapet", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Lua" + "Shell" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-06-29T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3640, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4051, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, @@ -3224,86 +6856,269 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/xenon-parapet", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-29T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Shell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/vellum-compass", - "repo_full_name": "demo-org/vellum-compass", - "display_name": "Vellum Compass", - "path": "lab/vellum-compass", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/zephyr-bastion", + "display_name": "Zephyr Bastion", + "path": "lab/zephyr-bastion", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/zephyr-bastion", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "Haskell" + "Perl" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md" ], "context_file_count": 2, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": false, "has_ci": false, "has_license": true, - "readme_char_count": 3777, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 4325, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3327,594 +7142,2082 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", + "legacy_status": "manual-only", "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/zephyr-bastion", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Perl" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/wicker-obelisk", - "repo_full_name": "demo-org/wicker-obelisk", - "display_name": "Wicker Obelisk", - "path": "studio/wicker-obelisk", - "section_marker": "studio/", + "project_key": "platform/dovetail-forge", + "display_name": "Dovetail Forge", + "path": "platform/dovetail-forge", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/dovetail-forge", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "PHP" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-18T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3914, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1311, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 2, + "medium": 2, + "low": 4 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 2, + "dependabot_medium": 2, + "dependabot_low": 4, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/dovetail-forge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/xenon-parapet", - "repo_full_name": "demo-org/xenon-parapet", - "display_name": "Xenon Parapet", - "path": "lab/xenon-parapet", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "project_key": "platform/ember-conduit", + "display_name": "Ember Conduit", + "path": "platform/ember-conduit", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", + "has_git": true, + "repo_full_name": "demo-org/ember-conduit", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Shell" + "Rust" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-27T22:50:13.825998+00:00", + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-18T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, - "has_ci": false, + "has_ci": true, "has_license": true, - "readme_char_count": 4051, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1448, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 2, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 2, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_status": "active", + "legacy_context_quality": "full", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ember-conduit", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/yarrow-spindle", - "repo_full_name": "demo-org/yarrow-spindle", - "display_name": "Yarrow Spindle", - "path": "studio/yarrow-spindle", - "section_marker": "studio/", + "project_key": "platform/fathom-beacon", + "display_name": "Fathom Beacon", + "path": "platform/fathom-beacon", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/fathom-beacon", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Java" + "TypeScript", + "Node" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-29T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "active-infra", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4188, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1585, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No elevated risk factors.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 0, + "low": 0 + }, + "zero_findings": true + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/fathom-beacon", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "active-infra" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-29T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Node" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/zephyr-bastion", - "repo_full_name": "demo-org/zephyr-bastion", - "display_name": "Zephyr Bastion", - "path": "lab/zephyr-bastion", - "section_marker": "lab/", + "project_key": "platform/ivory-sextant", + "display_name": "Ivory Sextant", + "path": "platform/ivory-sextant", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/ivory-sextant", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, "stack": [ - "Perl" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 4325, - "release_count": 0, + "last_meaningful_activity_at": "2026-06-29T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1996, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 1, + "dependabot_medium": 1, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 1 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "lab", + "legacy_context_quality": "full", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ivory-sextant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-29T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/amber-thicket", - "repo_full_name": "demo-org/amber-thicket", - "display_name": "Amber Thicket", - "path": "studio/amber-thicket", - "section_marker": "studio/", + "project_key": "platform/lumen-ferry", + "display_name": "Lumen Ferry", + "path": "platform/lumen-ferry", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/lumen-ferry", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "recent", - "archived": false, "stack": [ - "Dart", - "Flutter" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-27T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-29T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4462, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2407, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 1, + "medium": 0, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 1, + "dependabot_high": 1, + "dependabot_medium": 0, + "dependabot_low": 2, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/lumen-ferry", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-29T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/bramble-cistern", - "repo_full_name": "demo-org/bramble-cistern", - "display_name": "Bramble Cistern", - "path": "lab/bramble-cistern", - "section_marker": "lab/", + "project_key": "studio/amber-thicket", + "display_name": "Amber Thicket", + "path": "studio/amber-thicket", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/amber-thicket", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "R" + "Dart", + "Flutter" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 4599, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-29T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 4462, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3938,85 +9241,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/amber-thicket", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-29T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Dart, Flutter" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { "project_key": "studio/cobalt-wharf", - "repo_full_name": "demo-org/cobalt-wharf", "display_name": "Cobalt Wharf", "path": "studio/cobalt-wharf", - "section_marker": "studio/", - "has_git": true, "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/cobalt-wharf", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ "Scala" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-06-27T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-06-29T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": false, "has_license": true, "readme_char_count": 4736, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, - "doctor_gap": true, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4044,82 +9532,264 @@ "legacy_context_quality": "full", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/cobalt-wharf", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-29T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Scala" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/dusk-pergola", - "repo_full_name": "demo-org/dusk-pergola", - "display_name": "Dusk Pergola", - "path": "lab/dusk-pergola", - "section_marker": "lab/", + "project_key": "studio/errant-fathom", + "display_name": "Errant Fathom", + "path": "studio/errant-fathom", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/errant-fathom", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "OCaml" + "TypeScript" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 4873, - "release_count": 0, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 5010, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4139,207 +9809,726 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/errant-fathom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/errant-fathom", - "repo_full_name": "demo-org/errant-fathom", - "display_name": "Errant Fathom", - "path": "studio/errant-fathom", - "section_marker": "studio/", - "has_git": true, + "project_key": "studio/glacier-quill", + "display_name": "Glacier Quill", + "path": "studio/glacier-quill", "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/glacier-quill", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "TypeScript" + "Swift", + "SwiftUI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-18T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Finish from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 5010, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1722, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 4, + "medium": 3, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "note": 0, + "warning": 0 + }, + "zero_findings": false + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 1, + "dependabot_high": 4, + "dependabot_medium": 3, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 1, + "secret_scanning_open": 0, + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "active", "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/glacier-quill", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift, SwiftUI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/foxglove-mast", - "repo_full_name": "demo-org/foxglove-mast", - "display_name": "Foxglove Mast", - "path": "lab/foxglove-mast", - "section_marker": "lab/", + "project_key": "studio/harbor-lantern", + "display_name": "Harbor Lantern", + "path": "studio/harbor-lantern", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/harbor-lantern", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Nim" + "TypeScript", + "React" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-06-27T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-06-29T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 5147, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1859, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "medium": 1, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 1, + "dependabot_medium": 1, + "dependabot_low": 2, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 1 }, "advisory": { "notion_portfolio_call": "", @@ -4347,494 +10536,1414 @@ "notion_current_state": "", "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/harbor-lantern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-29T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, React" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/gossamer-ridge", - "repo_full_name": "demo-org/gossamer-ridge", - "display_name": "Gossamer Ridge", - "path": "archive/gossamer-ridge", - "section_marker": "archive/", + "project_key": "studio/juniper-kiln", + "display_name": "Juniper Kiln", + "path": "studio/juniper-kiln", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/juniper-kiln", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Python" + "Kotlin" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5284, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-18T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2133, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 2, + "medium": 0, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 2, + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "archive/hollow-tessera", - "repo_full_name": "demo-org/hollow-tessera", - "display_name": "Hollow Tessera", - "path": "archive/hollow-tessera", - "section_marker": "archive/", - "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", - "default_branch": "main" - }, - "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, - "stack": [ - "JavaScript" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5421, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." }, - "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/juniper-kiln", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Kotlin" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "archive/indigo-palisade", - "repo_full_name": "demo-org/indigo-palisade", - "display_name": "Indigo Palisade", - "path": "archive/indigo-palisade", - "section_marker": "archive/", + "project_key": "studio/kestrel-loom", + "display_name": "Kestrel Loom", + "path": "studio/kestrel-loom", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/kestrel-loom", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5558, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-06-29T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2270, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 4, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 4, + "dependabot_medium": 1, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/kestrel-loom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-06-29T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/jetty-marquee", - "repo_full_name": "demo-org/jetty-marquee", - "display_name": "Jetty Marquee", - "path": "archive/jetty-marquee", - "section_marker": "archive/", + "project_key": "studio/nimbus-charter", + "display_name": "Nimbus Charter", + "path": "studio/nimbus-charter", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/nimbus-charter", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Ruby" + "JavaScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 5695, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "decision-needed", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2681, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-20T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "medium": 2, + "low": 3 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 1, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 1 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "archive/kindling-arbor", - "repo_full_name": "demo-org/kindling-arbor", - "display_name": "Kindling Arbor", - "path": "archive/kindling-arbor", - "section_marker": "archive/", + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/nimbus-charter", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "studio/rialto-pennant", + "display_name": "Rialto Pennant", + "path": "studio/rialto-pennant", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/rialto-pennant", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "C++" + "TypeScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5832, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3229, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, + "coverage_state": "stale", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "stale", + "source_produced_at": "2026-07-19T21:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-19T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "code_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-19T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-19T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + } + }, "dependabot_critical": null, "dependabot_high": null, "dependabot_medium": null, @@ -4848,83 +11957,275 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "manual-only", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-07-19T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/rialto-pennant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/lattice-bezel", - "repo_full_name": "demo-org/lattice-bezel", - "display_name": "Lattice Bezel", - "path": "archive/lattice-bezel", - "section_marker": "archive/", + "project_key": "studio/umbra-trellis", + "display_name": "Umbra Trellis", + "path": "studio/umbra-trellis", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/umbra-trellis", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Swift" + "Lua" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5969, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3640, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4944,87 +12245,272 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/umbra-trellis", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Lua" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/mica-turnstile", - "repo_full_name": "demo-org/mica-turnstile", - "display_name": "Mica Turnstile", - "path": "archive/mica-turnstile", - "section_marker": "archive/", + "project_key": "studio/wicker-obelisk", + "display_name": "Wicker Obelisk", + "path": "studio/wicker-obelisk", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/wicker-obelisk", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Rust" + "PHP" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 6106, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3914, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5048,84 +12534,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/wicker-obelisk", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "PHP" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/nocturne-spar", - "repo_full_name": "demo-org/nocturne-spar", - "display_name": "Nocturne Spar", - "path": "archive/nocturne-spar", - "section_marker": "archive/", + "project_key": "studio/yarrow-spindle", + "display_name": "Yarrow Spindle", + "path": "studio/yarrow-spindle", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/yarrow-spindle", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "TypeScript" + "Java" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-09T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 6243, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-11T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4188, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5149,34 +12821,238 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-20T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/yarrow-spindle", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-11T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Java" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] } ], "rollups": { "risk_tier_counts": { - "elevated": 15, - "moderate": 12, - "baseline": 5, - "deferred": 8 + "elevated": 10, + "moderate": 8, + "baseline": 11, + "deferred": 11 }, "security": { - "coverage_state": "partial", + "scanned_count": 10, + "unavailable_count": 30, "complete_repo_count": 10, "partial_repo_count": 6, "stale_count": 2, "unknown_count": 22, - "scanned_count": 10, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "dependabot_observed_count": 16, + "code_scanning_observed_count": 10, + "secret_scanning_observed_count": 10, + "dependabot_zero_finding_count": 1, + "code_scanning_zero_finding_count": 6, + "secret_scanning_zero_finding_count": 9, + "remote_default_branch_observed_count": 16, + "remote_default_branch_partial_count": 0, + "remote_default_branch_stale_count": 2, + "remote_default_branch_unavailable_count": 22, + "coverage_state": "partial", "repos_with_open_high_critical": 15, "total_open_high": 37, "total_open_critical": 5 }, "decision": { - "decision_needed_count": 3, - "default_attention_count": 10 + "decision_needed_count": 12, + "default_attention_count": 13 } } } \ No newline at end of file diff --git a/output/demo/portfolio-truth-history-08.json b/output/demo/portfolio-truth-history-08.json index 034e5432..a509d522 100644 --- a/output/demo/portfolio-truth-history-08.json +++ b/output/demo/portfolio-truth-history-08.json @@ -1,15 +1,98 @@ { "schema_version": "0.11.0", + "generated_at": "2026-07-27T22:09:43.833784+00:00", "derivation_policy_version": "portfolio_attention.v3", - "generated_at": "2026-07-25T22:50:13.825998+00:00", - "workspace_root": "/demo-workspace", - "producer": { - "repository": "demo-org/portfolio-auditor", - "checkout_role": "demo-fixture", - "worktree_clean": true, - "dirty_path_count": 0, - "verified_at": "2026-07-25T22:50:13.825998+00:00" + "producer": {}, + "inputs": { + "catalog": { + "source_id": "portfolio-catalog", + "sha256": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00" + }, + "workspace": { + "source_id": "projects-root", + "observed_at": "2026-07-27T22:09:43.833784+00:00" + }, + "notion": { + "mode": "unavailable", + "observed_at": null, + "carried_from_generated_at": null + }, + "github_security": { + "source_id": "github-security-coverage-receipt", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "produced_at": "2026-07-27T22:09:43.833784+00:00", + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 18, + "path": "/demo-workspace/github-security-coverage.json", + "receipt_id": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", + "content_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" + } + }, + "coverage": [ + { + "source": "workspace", + "state": "observed", + "project_count": 40 + }, + { + "source": "git", + "state": "observed", + "observed_count": 40, + "project_count": 40 + }, + { + "source": "github_security", + "state": "partial", + "scanned_count": 10, + "complete_repo_count": 10, + "partial_repo_count": 6, + "stale_count": 2, + "unknown_count": 22, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "provider_observed_counts": { + "dependabot": 16, + "code_scanning": 10, + "secret_scanning": 10 + }, + "provider_zero_finding_counts": { + "dependabot": 1, + "code_scanning": 6, + "secret_scanning": 9 + }, + "remote_default_branch_counts": { + "observed": 16, + "partial": 0, + "stale": 2, + "credential_unavailable": 0, + "forbidden": 0, + "not_found": 0, + "rate_limited": 0, + "transient_error": 0, + "malformed": 0, + "not_requested": 0, + "unknown": 22 + }, + "project_count": 40 + }, + { + "source": "notion", + "state": "unknown", + "observed_count": 0 + } + ], + "exclusions": { + "policy_version": "workspace_discovery.v2", + "counts": {} }, + "workspace_root": "/demo-workspace", "source_summary": { "workspace_root": "/demo-workspace", "project_count": 40, @@ -17,1483 +100,2511 @@ "catalog_warnings": [], "legacy_registry_rows": 40, "notion_context_rows": 0, - "notion_context_carried_forward": 0, + "notion_context_carried_forward": false, "context_quality_counts": { + "none": 8, "full": 8, "standard": 8, "minimum-viable": 8, - "boilerplate": 8, - "none": 8 + "boilerplate": 8 }, "activity_status_counts": { + "stale": 19, "active": 9, - "recent": 12, - "stale": 19 + "recent": 12 }, + "archived_count": 8, "attention_state_counts": { - "active-product": 3, - "decision-needed": 3, - "active-infra": 4, - "manual-only": 7, + "archived": 8, + "decision-needed": 10, "experiment": 8, "parked": 7, - "archived": 8 + "manual-only": 5, + "active-infra": 1, + "active-product": 1 }, - "archived_count": 8, "github_archived_count": 0, "duplicate_display_names": [], "unresolved_duplicate_display_names": [] }, "precedence_matrix": { - "identity": [ - "demo fixture" + "declared.owner": [ + "catalog_repo", + "catalog_group" + ], + "declared.team": [ + "catalog_repo", + "catalog_group" + ], + "declared.purpose": [ + "catalog_repo", + "catalog_group" + ], + "declared.lifecycle_state": [ + "catalog_repo", + "catalog_group" + ], + "declared.criticality": [ + "catalog_repo", + "catalog_group" + ], + "declared.review_cadence": [ + "catalog_repo", + "catalog_group" + ], + "declared.intended_disposition": [ + "catalog_repo", + "catalog_group" + ], + "declared.maturity_program": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.target_maturity": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.operating_path": [ + "normalized" + ], + "declared.category": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "declared.tool_provenance": [ + "catalog_repo", + "catalog_group", + "inference", + "legacy_registry" + ], + "declared.notes": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "derived.stack": [ + "workspace", + "legacy_registry" + ], + "derived.context_quality": [ + "workspace", + "catalog_repo", + "catalog_group" + ], + "derived.context_files": [ + "workspace" ], - "declared": [ - "demo fixture" + "derived.primary_context_file": [ + "workspace" ], - "derived": [ - "demo fixture" + "derived.project_summary_present": [ + "workspace" ], - "risk": [ - "demo fixture" + "derived.current_state_present": [ + "workspace" ], - "security": [ - "demo fixture receipt" + "derived.stack_present": [ + "workspace" + ], + "derived.run_instructions_present": [ + "workspace" + ], + "derived.known_risks_present": [ + "workspace" + ], + "derived.next_recommended_move_present": [ + "workspace" + ], + "derived.last_meaningful_activity_at": [ + "git", + "workspace" + ], + "derived.activity_status": [ + "derived" + ], + "derived.archived": [ + "derived" + ], + "derived.attention_state": [ + "derived" + ], + "derived.path_override": [ + "normalized" + ], + "derived.path_confidence": [ + "normalized" + ], + "derived.path_rationale": [ + "normalized" + ], + "derived.has_tests": [ + "workspace" + ], + "derived.has_ci": [ + "workspace" + ], + "derived.readme_char_count": [ + "workspace" ] }, - "coverage": [ - { - "source": "workspace", - "state": "observed", - "project_count": 40 - }, - { - "source": "github_security", - "state": "partial", - "project_count": 40, - "complete_repo_count": 10, - "partial_repo_count": 6, - "stale_count": 2, - "unknown_count": 22 - } - ], - "exclusions": [], - "inputs": [], "warnings": [], "projects": [ { "identity": { - "project_key": "flagship/aurora-ledger", - "repo_full_name": "demo-org/aurora-ledger", - "display_name": "Aurora Ledger", - "path": "flagship/aurora-ledger", - "section_marker": "flagship/", + "project_key": "archive/gossamer-ridge", + "display_name": "Gossamer Ridge", + "path": "archive/gossamer-ridge", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/gossamer-ridge", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "TypeScript", - "Next.js" + "Python" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 900, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5284, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "8 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 5, - "medium": 2, - "low": 3 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 5, - "dependabot_medium": 2, - "dependabot_low": 3, - "code_scanning_critical": 0, - "code_scanning_high": 2, - "secret_scanning_open": 0, - "open_high_critical": 8 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "flagship/basalt-relay", - "repo_full_name": "demo-org/basalt-relay", - "display_name": "Basalt Relay", - "path": "flagship/basalt-relay", - "section_marker": "flagship/", - "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", - "default_branch": "main" }, - "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", - "owner": "demo-operator", - "team": "", - "criticality": "high", - "review_cadence": "weekly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, - "stack": [ - "Rust", - "Tauri 2" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1037, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." - }, - "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "3 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": false, - "context_risk": false, - "path_risk": false - }, - "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "medium": 1, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/gossamer-ridge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 2, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 3 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "flagship", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "flagship/cinder-atlas", - "repo_full_name": "demo-org/cinder-atlas", - "display_name": "Cinder Atlas", - "path": "flagship/cinder-atlas", - "section_marker": "flagship/", + "project_key": "archive/hollow-tessera", + "display_name": "Hollow Tessera", + "path": "archive/hollow-tessera", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/hollow-tessera", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "FastAPI" + "JavaScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1174, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is finish from explicit operating path." + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5421, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "6 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 2, - "high": 3, - "medium": 0, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 1 - }, - "zero_findings": false - } - }, - "dependabot_critical": 2, - "dependabot_high": 3, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 1, - "code_scanning_high": 0, - "secret_scanning_open": 1, - "open_high_critical": 6 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "platform/dovetail-forge", - "repo_full_name": "demo-org/dovetail-forge", - "display_name": "Dovetail Forge", - "path": "platform/dovetail-forge", - "section_marker": "platform/", - "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", - "default_branch": "main" }, - "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, - "stack": [ - "Go" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1311, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." - }, - "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "1 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": false, - "context_risk": true, - "path_risk": false - }, - "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "medium": 2, - "low": 4 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/hollow-tessera", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 2, - "dependabot_low": 4, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 1 + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "platform/ember-conduit", - "repo_full_name": "demo-org/ember-conduit", - "display_name": "Ember Conduit", - "path": "platform/ember-conduit", - "section_marker": "platform/", + "project_key": "archive/indigo-palisade", + "display_name": "Indigo Palisade", + "path": "archive/indigo-palisade", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/indigo-palisade", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "Go" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-23T22:50:13.825998+00:00", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1448, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_ci": false, + "has_license": false, + "readme_char_count": 5558, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "1 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/indigo-palisade", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 1 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/jetty-marquee", + "display_name": "Jetty Marquee", + "path": "archive/jetty-marquee", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/jetty-marquee", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "Ruby" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": false, + "readme_char_count": 5695, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/jetty-marquee", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/fathom-beacon", - "repo_full_name": "demo-org/fathom-beacon", - "display_name": "Fathom Beacon", - "path": "platform/fathom-beacon", - "section_marker": "platform/", + "project_key": "archive/kindling-arbor", + "display_name": "Kindling Arbor", + "path": "archive/kindling-arbor", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/kindling-arbor", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-infra", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "Node" + "C++" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-04T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1585, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5832, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "deferred", "risk_factors": [], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "medium": 0, - "low": 0 - }, - "zero_findings": true - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/kindling-arbor", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" }, - "dependabot_critical": 0, - "dependabot_high": 0, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 0 + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C++" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "platform", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/glacier-quill", - "repo_full_name": "demo-org/glacier-quill", - "display_name": "Glacier Quill", - "path": "studio/glacier-quill", - "section_marker": "studio/", + "project_key": "archive/lattice-bezel", + "display_name": "Lattice Bezel", + "path": "archive/lattice-bezel", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/lattice-bezel", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Swift", - "SwiftUI" + "Swift" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-23T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1722, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "has_ci": false, + "has_license": false, + "readme_char_count": 5969, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "5 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 3, - "medium": 3, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/lattice-bezel", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 1, - "dependabot_high": 3, - "dependabot_medium": 3, - "dependabot_low": 1, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 5 + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/mica-turnstile", + "display_name": "Mica Turnstile", + "path": "archive/mica-turnstile", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/mica-turnstile", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "Rust" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": false, + "readme_char_count": 6106, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/mica-turnstile", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/harbor-lantern", - "repo_full_name": "demo-org/harbor-lantern", - "display_name": "Harbor Lantern", - "path": "studio/harbor-lantern", - "section_marker": "studio/", + "project_key": "archive/nocturne-spar", + "display_name": "Nocturne Spar", + "path": "archive/nocturne-spar", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/nocturne-spar", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-product", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "React" + "TypeScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-04T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1859, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is operate from explicit operating path." + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 6243, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", - "risk_factors": [ - "thin project context" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "medium": 1, - "low": 2 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/nocturne-spar", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" }, - "dependabot_critical": 0, - "dependabot_high": 0, - "dependabot_medium": 1, - "dependabot_low": 2, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 0 + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "studio", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "platform/ivory-sextant", - "repo_full_name": "demo-org/ivory-sextant", - "display_name": "Ivory Sextant", - "path": "platform/ivory-sextant", - "section_marker": "platform/", + "project_key": "flagship/aurora-ledger", + "display_name": "Aurora Ledger", + "path": "flagship/aurora-ledger", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/aurora-ledger", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Python" + "TypeScript", + "Next.js" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-04T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-25T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1996, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 900, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "1 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1502,68 +2613,68 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 1, - "medium": 1, - "low": 0 + "critical": 1, + "high": 5, + "medium": 2, + "low": 3 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 2, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1571,96 +2682,293 @@ "zero_findings": true } }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 1, - "dependabot_low": 0, + "dependabot_critical": 1, + "dependabot_high": 5, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 2, "secret_scanning_open": 0, - "open_high_critical": 1 + "open_high_critical": 6 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", + "legacy_status": "active", "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/aurora-ledger", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Next.js" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/juniper-kiln", - "repo_full_name": "demo-org/juniper-kiln", - "display_name": "Juniper Kiln", - "path": "studio/juniper-kiln", - "section_marker": "studio/", + "project_key": "flagship/basalt-relay", + "display_name": "Basalt Relay", + "path": "flagship/basalt-relay", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/basalt-relay", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Kotlin" + "Rust", + "Tauri 2" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md" ], "context_file_count": 2, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-23T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-25T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2133, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1037, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "1 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1669,68 +2977,68 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 1, - "medium": 0, - "low": 1 + "high": 2, + "medium": 1, + "low": 0 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 1, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1738,174 +3046,377 @@ "zero_findings": true } }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 1 + "dependabot_critical": 0, + "dependabot_high": 2, + "dependabot_medium": 1, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 1, + "secret_scanning_open": 0, + "open_high_critical": 2 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "flagship", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/basalt-relay", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust, Tauri 2" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "studio", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/kestrel-loom", - "repo_full_name": "demo-org/kestrel-loom", - "display_name": "Kestrel Loom", - "path": "studio/kestrel-loom", - "section_marker": "studio/", + "project_key": "flagship/cinder-atlas", + "display_name": "Cinder Atlas", + "path": "flagship/cinder-atlas", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/cinder-atlas", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "recent", - "archived": false, "stack": [ - "Ruby" + "Python", + "FastAPI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-04T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-25T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Finish from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2270, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "readme_char_count": 1174, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "3 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "partial", + "alerts_available": true, + "coverage_state": "complete", "cohort_member": true, "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, + "critical": 2, "high": 3, - "medium": 1, - "low": 0 + "medium": 0, + "low": 1 }, "zero_findings": false }, "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": false }, "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 1 + }, + "zero_findings": false } }, - "dependabot_critical": 0, + "dependabot_critical": 2, "dependabot_high": 3, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 3 + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 1, + "code_scanning_high": 0, + "secret_scanning_open": 1, + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", @@ -1913,81 +3424,279 @@ "notion_current_state": "", "legacy_status": "active", "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/cinder-atlas", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, FastAPI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/lumen-ferry", - "repo_full_name": "demo-org/lumen-ferry", - "display_name": "Lumen Ferry", - "path": "platform/lumen-ferry", - "section_marker": "platform/", + "project_key": "flagship/meridian-vault", + "display_name": "Meridian Vault", + "path": "flagship/meridian-vault", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/meridian-vault", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Go" + "Python", + "Django" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-04T22:50:13.825998+00:00", + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-25T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2407, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2544, + "release_count": 3 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "2 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -1996,28 +3705,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 1, - "high": 1, - "medium": 0, - "low": 2 + "critical": 0, + "high": 3, + "medium": 4, + "low": 1 }, "zero_findings": false }, @@ -2034,7 +3743,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2052,338 +3761,884 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, - "dependabot_critical": 1, - "dependabot_high": 1, - "dependabot_medium": 0, - "dependabot_low": 2, + "dependabot_critical": 0, + "dependabot_high": 3, + "dependabot_medium": 4, + "dependabot_low": 1, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 2 + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "boilerplate", - "legacy_category": "platform", + "legacy_status": "active", + "legacy_context_quality": "full", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/meridian-vault", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, Django" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/meridian-vault", - "repo_full_name": "demo-org/meridian-vault", - "display_name": "Meridian Vault", - "path": "flagship/meridian-vault", - "section_marker": "flagship/", + "project_key": "lab/bramble-cistern", + "display_name": "Bramble Cistern", + "path": "lab/bramble-cistern", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/bramble-cistern", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "flagship", - "tool_provenance": "claude-code", + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "R" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4599, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/bramble-cistern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "R" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/dusk-pergola", + "display_name": "Dusk Pergola", + "path": "lab/dusk-pergola", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/dusk-pergola", + "default_branch": "main" + }, + "declared": { "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "Django" + "OCaml" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 2544, - "release_count": 3, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", "path_confidence": "high", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 4873, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "3 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 3, - "medium": 4, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - } - }, - "dependabot_critical": 0, - "dependabot_high": 3, - "dependabot_medium": 4, - "dependabot_low": 1, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 3 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_context_quality": "standard", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/dusk-pergola", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "OCaml" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/nimbus-charter", - "repo_full_name": "demo-org/nimbus-charter", - "display_name": "Nimbus Charter", - "path": "studio/nimbus-charter", - "section_marker": "studio/", + "project_key": "lab/foxglove-mast", + "display_name": "Foxglove Mast", + "path": "lab/foxglove-mast", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/foxglove-mast", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "JavaScript" + "Nim" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": true, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-07-06T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, "has_license": true, - "readme_char_count": 2681, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 5147, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "no meaningful activity in the recent window" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "medium": 2, - "low": 3 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - } - }, - "dependabot_critical": 0, - "dependabot_high": 0, - "dependabot_medium": 2, - "dependabot_low": 3, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, @@ -2393,83 +4648,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/foxglove-mast", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Nim" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { "project_key": "lab/onyx-placard", - "repo_full_name": "demo-org/onyx-placard", "display_name": "Onyx Placard", "path": "lab/onyx-placard", - "section_marker": "lab/", - "has_git": true, "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/onyx-placard", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ "Elixir" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-04T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-06T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Experiment from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, "readme_char_count": 2818, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "release_count": 0 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "1 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -2478,22 +4920,22 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, @@ -2516,7 +4958,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2534,7 +4976,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2557,80 +4999,277 @@ "legacy_context_quality": "minimum-viable", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/onyx-placard", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Elixir" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { "project_key": "lab/pallas-runner", - "repo_full_name": "demo-org/pallas-runner", "display_name": "Pallas Runner", "path": "lab/pallas-runner", - "section_marker": "lab/", - "has_git": true, "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/pallas-runner", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ "Rust" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-23T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-25T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": false, "has_license": true, "readme_char_count": 2955, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "1 open high/critical security alerts", - "no CI workflow", - "thin project context" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, - "doctor_gap": true, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", + "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, @@ -2639,22 +5278,22 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, @@ -2677,7 +5316,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2695,7 +5334,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-07-25T22:50:13.825998+00:00", + "observed_at": "2026-07-27T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2718,81 +5357,274 @@ "legacy_context_quality": "boilerplate", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/pallas-runner", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { "project_key": "lab/quartz-signal", - "repo_full_name": "demo-org/quartz-signal", "display_name": "Quartz Signal", "path": "lab/quartz-signal", - "section_marker": "lab/", - "has_git": true, "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/quartz-signal", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, "readme_char_count": 3092, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -2801,8 +5633,63 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "stale", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", - "providers": {}, + "source_produced_at": "2026-07-26T21:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-26T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "code_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-26T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-26T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + } + }, "dependabot_critical": null, "dependabot_high": null, "dependabot_medium": null, @@ -2820,89 +5707,278 @@ "legacy_context_quality": "full", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-07-26T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/quartz-signal", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/rialto-pennant", - "repo_full_name": "demo-org/rialto-pennant", - "display_name": "Rialto Pennant", - "path": "studio/rialto-pennant", - "section_marker": "studio/", + "project_key": "lab/solstice-cairn", + "display_name": "Solstice Cairn", + "path": "lab/solstice-cairn", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/solstice-cairn", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, "stack": [ - "TypeScript" + "C" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 3229, - "release_count": 0, + "last_meaningful_activity_at": "2026-07-06T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3366, + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-07-25T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2918,83 +5994,271 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_context_quality": "minimum-viable", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/solstice-cairn", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/solstice-cairn", - "repo_full_name": "demo-org/solstice-cairn", - "display_name": "Solstice Cairn", - "path": "lab/solstice-cairn", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/tabard-anvil", + "display_name": "Tabard Anvil", + "path": "lab/tabard-anvil", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/tabard-anvil", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "C" + "Zig" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-04T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, + "last_meaningful_activity_at": "2026-07-06T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3366, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 3503, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, @@ -3014,88 +6278,273 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "minimum-viable", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/tabard-anvil", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Zig" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/tabard-anvil", - "repo_full_name": "demo-org/tabard-anvil", - "display_name": "Tabard Anvil", - "path": "lab/tabard-anvil", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/vellum-compass", + "display_name": "Vellum Compass", + "path": "lab/vellum-compass", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/vellum-compass", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Zig" + "Haskell" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-04T22:50:13.825998+00:00", - "has_tests": true, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, "has_ci": false, "has_license": true, - "readme_char_count": 3503, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3777, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3120,85 +6569,271 @@ "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "boilerplate", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/vellum-compass", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Haskell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/umbra-trellis", - "repo_full_name": "demo-org/umbra-trellis", - "display_name": "Umbra Trellis", - "path": "studio/umbra-trellis", - "section_marker": "studio/", + "project_key": "lab/xenon-parapet", + "display_name": "Xenon Parapet", + "path": "lab/xenon-parapet", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/xenon-parapet", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Lua" + "Shell" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-07-06T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3640, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4051, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, @@ -3222,86 +6857,269 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/xenon-parapet", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Shell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/vellum-compass", - "repo_full_name": "demo-org/vellum-compass", - "display_name": "Vellum Compass", - "path": "lab/vellum-compass", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/zephyr-bastion", + "display_name": "Zephyr Bastion", + "path": "lab/zephyr-bastion", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/zephyr-bastion", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "Haskell" + "Perl" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md" ], "context_file_count": 2, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": false, "has_ci": false, "has_license": true, - "readme_char_count": 3777, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 4325, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3325,594 +7143,2082 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", + "legacy_status": "manual-only", "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/zephyr-bastion", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Perl" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/wicker-obelisk", - "repo_full_name": "demo-org/wicker-obelisk", - "display_name": "Wicker Obelisk", - "path": "studio/wicker-obelisk", - "section_marker": "studio/", + "project_key": "platform/dovetail-forge", + "display_name": "Dovetail Forge", + "path": "platform/dovetail-forge", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/dovetail-forge", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "PHP" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-25T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3914, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1311, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "medium": 2, + "low": 4 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 1, + "dependabot_medium": 2, + "dependabot_low": 4, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 1 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/dovetail-forge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/xenon-parapet", - "repo_full_name": "demo-org/xenon-parapet", - "display_name": "Xenon Parapet", - "path": "lab/xenon-parapet", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "project_key": "platform/ember-conduit", + "display_name": "Ember Conduit", + "path": "platform/ember-conduit", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", + "has_git": true, + "repo_full_name": "demo-org/ember-conduit", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Shell" + "Rust" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-04T22:50:13.825998+00:00", + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-25T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, - "has_ci": false, + "has_ci": true, "has_license": true, - "readme_char_count": 4051, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1448, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 1, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 1 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_status": "active", + "legacy_context_quality": "full", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ember-conduit", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/yarrow-spindle", - "repo_full_name": "demo-org/yarrow-spindle", - "display_name": "Yarrow Spindle", - "path": "studio/yarrow-spindle", - "section_marker": "studio/", + "project_key": "platform/fathom-beacon", + "display_name": "Fathom Beacon", + "path": "platform/fathom-beacon", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/fathom-beacon", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Java" + "TypeScript", + "Node" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-07-06T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "active-infra", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4188, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1585, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No elevated risk factors.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, + "security": { + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 0, + "low": 0 + }, + "zero_findings": true + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/fathom-beacon", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "active-infra" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Node" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/zephyr-bastion", - "repo_full_name": "demo-org/zephyr-bastion", - "display_name": "Zephyr Bastion", - "path": "lab/zephyr-bastion", - "section_marker": "lab/", + "project_key": "platform/ivory-sextant", + "display_name": "Ivory Sextant", + "path": "platform/ivory-sextant", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/ivory-sextant", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, "stack": [ - "Perl" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 4325, - "release_count": 0, + "last_meaningful_activity_at": "2026-07-06T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1996, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 1, + "dependabot_medium": 1, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 1 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "lab", + "legacy_context_quality": "full", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ivory-sextant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/amber-thicket", - "repo_full_name": "demo-org/amber-thicket", - "display_name": "Amber Thicket", - "path": "studio/amber-thicket", - "section_marker": "studio/", + "project_key": "platform/lumen-ferry", + "display_name": "Lumen Ferry", + "path": "platform/lumen-ferry", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/lumen-ferry", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "recent", - "archived": false, "stack": [ - "Dart", - "Flutter" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-04T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-06T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4462, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2407, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 1, + "medium": 0, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 1, + "dependabot_high": 1, + "dependabot_medium": 0, + "dependabot_low": 2, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/lumen-ferry", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/bramble-cistern", - "repo_full_name": "demo-org/bramble-cistern", - "display_name": "Bramble Cistern", - "path": "lab/bramble-cistern", - "section_marker": "lab/", + "project_key": "studio/amber-thicket", + "display_name": "Amber Thicket", + "path": "studio/amber-thicket", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/amber-thicket", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "R" + "Dart", + "Flutter" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 4599, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-06T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 4462, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3936,85 +9242,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/amber-thicket", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Dart, Flutter" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { "project_key": "studio/cobalt-wharf", - "repo_full_name": "demo-org/cobalt-wharf", "display_name": "Cobalt Wharf", "path": "studio/cobalt-wharf", - "section_marker": "studio/", - "has_git": true, "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/cobalt-wharf", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ "Scala" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-04T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-06T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": false, "has_license": true, "readme_char_count": 4736, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, - "doctor_gap": true, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4042,82 +9533,264 @@ "legacy_context_quality": "full", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/cobalt-wharf", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Scala" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/dusk-pergola", - "repo_full_name": "demo-org/dusk-pergola", - "display_name": "Dusk Pergola", - "path": "lab/dusk-pergola", - "section_marker": "lab/", + "project_key": "studio/errant-fathom", + "display_name": "Errant Fathom", + "path": "studio/errant-fathom", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/errant-fathom", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "OCaml" + "TypeScript" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 4873, - "release_count": 0, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 5010, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4137,206 +9810,724 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/errant-fathom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/errant-fathom", - "repo_full_name": "demo-org/errant-fathom", - "display_name": "Errant Fathom", - "path": "studio/errant-fathom", - "section_marker": "studio/", - "has_git": true, + "project_key": "studio/glacier-quill", + "display_name": "Glacier Quill", + "path": "studio/glacier-quill", "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/glacier-quill", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "TypeScript" + "Swift", + "SwiftUI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-25T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Finish from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 5010, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1722, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 3, + "medium": 3, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "note": 0, + "warning": 0 + }, + "zero_findings": false + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 1, + "dependabot_high": 3, + "dependabot_medium": 3, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 1, + "secret_scanning_open": 0, + "open_high_critical": 4 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "active", "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/glacier-quill", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift, SwiftUI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/foxglove-mast", - "repo_full_name": "demo-org/foxglove-mast", - "display_name": "Foxglove Mast", - "path": "lab/foxglove-mast", - "section_marker": "lab/", + "project_key": "studio/harbor-lantern", + "display_name": "Harbor Lantern", + "path": "studio/harbor-lantern", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/harbor-lantern", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Nim" + "TypeScript", + "React" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-04T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-07-06T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "active-product", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 5147, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 1859, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": false }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 1, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 1, + "dependabot_low": 2, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, "open_high_critical": 0 }, "advisory": { @@ -4345,397 +10536,1067 @@ "notion_current_state": "", "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/harbor-lantern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "active-product" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, React" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/gossamer-ridge", - "repo_full_name": "demo-org/gossamer-ridge", - "display_name": "Gossamer Ridge", - "path": "archive/gossamer-ridge", - "section_marker": "archive/", + "project_key": "studio/juniper-kiln", + "display_name": "Juniper Kiln", + "path": "studio/juniper-kiln", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/juniper-kiln", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Python" + "Kotlin" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5284, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-25T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2133, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "medium": 0, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 1, + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 1 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "archive/hollow-tessera", - "repo_full_name": "demo-org/hollow-tessera", - "display_name": "Hollow Tessera", - "path": "archive/hollow-tessera", - "section_marker": "archive/", - "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", - "default_branch": "main" - }, - "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, - "stack": [ - "JavaScript" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5421, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." }, - "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/juniper-kiln", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Kotlin" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "archive/indigo-palisade", - "repo_full_name": "demo-org/indigo-palisade", - "display_name": "Indigo Palisade", - "path": "archive/indigo-palisade", - "section_marker": "archive/", + "project_key": "studio/kestrel-loom", + "display_name": "Kestrel Loom", + "path": "studio/kestrel-loom", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/kestrel-loom", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5558, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-06T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2270, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 3, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 3, + "dependabot_medium": 1, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/kestrel-loom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-06T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/jetty-marquee", - "repo_full_name": "demo-org/jetty-marquee", - "display_name": "Jetty Marquee", - "path": "archive/jetty-marquee", - "section_marker": "archive/", + "project_key": "studio/nimbus-charter", + "display_name": "Nimbus Charter", + "path": "studio/nimbus-charter", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/nimbus-charter", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Ruby" + "JavaScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 5695, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2681, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is partial.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-07-27T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 2, + "low": 3 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, @@ -4745,94 +11606,342 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "archive/kindling-arbor", - "repo_full_name": "demo-org/kindling-arbor", - "display_name": "Kindling Arbor", - "path": "archive/kindling-arbor", - "section_marker": "archive/", + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/nimbus-charter", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "studio/rialto-pennant", + "display_name": "Rialto Pennant", + "path": "studio/rialto-pennant", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/rialto-pennant", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "C++" + "TypeScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5832, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3229, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, + "coverage_state": "stale", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "stale", + "source_produced_at": "2026-07-26T21:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-26T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "code_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-26T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-07-26T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + } + }, "dependabot_critical": null, "dependabot_high": null, "dependabot_medium": null, @@ -4846,83 +11955,275 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "manual-only", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-07-26T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/rialto-pennant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/lattice-bezel", - "repo_full_name": "demo-org/lattice-bezel", - "display_name": "Lattice Bezel", - "path": "archive/lattice-bezel", - "section_marker": "archive/", + "project_key": "studio/umbra-trellis", + "display_name": "Umbra Trellis", + "path": "studio/umbra-trellis", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/umbra-trellis", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Swift" + "Lua" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5969, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3640, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4942,87 +12243,272 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/umbra-trellis", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Lua" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/mica-turnstile", - "repo_full_name": "demo-org/mica-turnstile", - "display_name": "Mica Turnstile", - "path": "archive/mica-turnstile", - "section_marker": "archive/", + "project_key": "studio/wicker-obelisk", + "display_name": "Wicker Obelisk", + "path": "studio/wicker-obelisk", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/wicker-obelisk", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Rust" + "PHP" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 6106, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3914, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5046,84 +12532,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/wicker-obelisk", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "PHP" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/nocturne-spar", - "repo_full_name": "demo-org/nocturne-spar", - "display_name": "Nocturne Spar", - "path": "archive/nocturne-spar", - "section_marker": "archive/", + "project_key": "studio/yarrow-spindle", + "display_name": "Yarrow Spindle", + "path": "studio/yarrow-spindle", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/yarrow-spindle", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "TypeScript" + "Java" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-16T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 6243, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-18T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4188, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5147,34 +12819,238 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-07-27T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/yarrow-spindle", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-18T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Java" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] } ], "rollups": { "risk_tier_counts": { - "elevated": 13, - "moderate": 12, - "baseline": 7, - "deferred": 8 + "elevated": 10, + "moderate": 7, + "baseline": 12, + "deferred": 11 }, "security": { - "coverage_state": "partial", + "scanned_count": 10, + "unavailable_count": 30, "complete_repo_count": 10, "partial_repo_count": 6, "stale_count": 2, "unknown_count": 22, - "scanned_count": 10, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "dependabot_observed_count": 16, + "code_scanning_observed_count": 10, + "secret_scanning_observed_count": 10, + "dependabot_zero_finding_count": 1, + "code_scanning_zero_finding_count": 6, + "secret_scanning_zero_finding_count": 9, + "remote_default_branch_observed_count": 16, + "remote_default_branch_partial_count": 0, + "remote_default_branch_stale_count": 2, + "remote_default_branch_unavailable_count": 22, + "coverage_state": "partial", "repos_with_open_high_critical": 13, "total_open_high": 26, "total_open_critical": 5 }, "decision": { - "decision_needed_count": 3, - "default_attention_count": 10 + "decision_needed_count": 10, + "default_attention_count": 12 } } } \ No newline at end of file diff --git a/output/demo/portfolio-truth-history-09.json b/output/demo/portfolio-truth-history-09.json index 1bb28df8..42a0f72b 100644 --- a/output/demo/portfolio-truth-history-09.json +++ b/output/demo/portfolio-truth-history-09.json @@ -1,15 +1,98 @@ { "schema_version": "0.11.0", + "generated_at": "2026-08-03T22:09:43.833784+00:00", "derivation_policy_version": "portfolio_attention.v3", - "generated_at": "2026-08-01T22:50:13.825998+00:00", - "workspace_root": "/demo-workspace", - "producer": { - "repository": "demo-org/portfolio-auditor", - "checkout_role": "demo-fixture", - "worktree_clean": true, - "dirty_path_count": 0, - "verified_at": "2026-08-01T22:50:13.825998+00:00" + "producer": {}, + "inputs": { + "catalog": { + "source_id": "portfolio-catalog", + "sha256": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00" + }, + "workspace": { + "source_id": "projects-root", + "observed_at": "2026-08-03T22:09:43.833784+00:00" + }, + "notion": { + "mode": "unavailable", + "observed_at": null, + "carried_from_generated_at": null + }, + "github_security": { + "source_id": "github-security-coverage-receipt", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "produced_at": "2026-08-03T22:09:43.833784+00:00", + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 18, + "path": "/demo-workspace/github-security-coverage.json", + "receipt_id": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", + "content_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" + } + }, + "coverage": [ + { + "source": "workspace", + "state": "observed", + "project_count": 40 + }, + { + "source": "git", + "state": "observed", + "observed_count": 40, + "project_count": 40 + }, + { + "source": "github_security", + "state": "partial", + "scanned_count": 10, + "complete_repo_count": 10, + "partial_repo_count": 6, + "stale_count": 2, + "unknown_count": 22, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "provider_observed_counts": { + "dependabot": 16, + "code_scanning": 10, + "secret_scanning": 10 + }, + "provider_zero_finding_counts": { + "dependabot": 1, + "code_scanning": 6, + "secret_scanning": 9 + }, + "remote_default_branch_counts": { + "observed": 16, + "partial": 0, + "stale": 2, + "credential_unavailable": 0, + "forbidden": 0, + "not_found": 0, + "rate_limited": 0, + "transient_error": 0, + "malformed": 0, + "not_requested": 0, + "unknown": 22 + }, + "project_count": 40 + }, + { + "source": "notion", + "state": "unknown", + "observed_count": 0 + } + ], + "exclusions": { + "policy_version": "workspace_discovery.v2", + "counts": {} }, + "workspace_root": "/demo-workspace", "source_summary": { "workspace_root": "/demo-workspace", "project_count": 40, @@ -17,1147 +100,2511 @@ "catalog_warnings": [], "legacy_registry_rows": 40, "notion_context_rows": 0, - "notion_context_carried_forward": 0, + "notion_context_carried_forward": false, "context_quality_counts": { + "none": 8, "full": 8, "standard": 8, "minimum-viable": 8, - "boilerplate": 8, - "none": 8 + "boilerplate": 8 }, "activity_status_counts": { + "stale": 19, "active": 9, - "recent": 12, - "stale": 19 + "recent": 12 }, + "archived_count": 8, "attention_state_counts": { - "active-product": 3, - "decision-needed": 3, - "active-infra": 4, - "manual-only": 7, + "archived": 8, + "decision-needed": 9, "experiment": 8, "parked": 7, - "archived": 8 + "manual-only": 5, + "active-infra": 2, + "active-product": 1 }, - "archived_count": 8, "github_archived_count": 0, "duplicate_display_names": [], "unresolved_duplicate_display_names": [] }, "precedence_matrix": { - "identity": [ - "demo fixture" + "declared.owner": [ + "catalog_repo", + "catalog_group" + ], + "declared.team": [ + "catalog_repo", + "catalog_group" + ], + "declared.purpose": [ + "catalog_repo", + "catalog_group" + ], + "declared.lifecycle_state": [ + "catalog_repo", + "catalog_group" + ], + "declared.criticality": [ + "catalog_repo", + "catalog_group" + ], + "declared.review_cadence": [ + "catalog_repo", + "catalog_group" + ], + "declared.intended_disposition": [ + "catalog_repo", + "catalog_group" + ], + "declared.maturity_program": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.target_maturity": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.operating_path": [ + "normalized" + ], + "declared.category": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "declared.tool_provenance": [ + "catalog_repo", + "catalog_group", + "inference", + "legacy_registry" + ], + "declared.notes": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "derived.stack": [ + "workspace", + "legacy_registry" + ], + "derived.context_quality": [ + "workspace", + "catalog_repo", + "catalog_group" + ], + "derived.context_files": [ + "workspace" ], - "declared": [ - "demo fixture" + "derived.primary_context_file": [ + "workspace" ], - "derived": [ - "demo fixture" + "derived.project_summary_present": [ + "workspace" ], - "risk": [ - "demo fixture" + "derived.current_state_present": [ + "workspace" ], - "security": [ - "demo fixture receipt" + "derived.stack_present": [ + "workspace" + ], + "derived.run_instructions_present": [ + "workspace" + ], + "derived.known_risks_present": [ + "workspace" + ], + "derived.next_recommended_move_present": [ + "workspace" + ], + "derived.last_meaningful_activity_at": [ + "git", + "workspace" + ], + "derived.activity_status": [ + "derived" + ], + "derived.archived": [ + "derived" + ], + "derived.attention_state": [ + "derived" + ], + "derived.path_override": [ + "normalized" + ], + "derived.path_confidence": [ + "normalized" + ], + "derived.path_rationale": [ + "normalized" + ], + "derived.has_tests": [ + "workspace" + ], + "derived.has_ci": [ + "workspace" + ], + "derived.readme_char_count": [ + "workspace" ] }, - "coverage": [ - { - "source": "workspace", - "state": "observed", - "project_count": 40 - }, - { - "source": "github_security", - "state": "partial", - "project_count": 40, - "complete_repo_count": 10, - "partial_repo_count": 6, - "stale_count": 2, - "unknown_count": 22 - } - ], - "exclusions": [], - "inputs": [], "warnings": [], "projects": [ { "identity": { - "project_key": "flagship/aurora-ledger", - "repo_full_name": "demo-org/aurora-ledger", - "display_name": "Aurora Ledger", - "path": "flagship/aurora-ledger", - "section_marker": "flagship/", + "project_key": "archive/gossamer-ridge", + "display_name": "Gossamer Ridge", + "path": "archive/gossamer-ridge", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/gossamer-ridge", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "TypeScript", - "Next.js" + "Python" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 900, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5284, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "7 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 4, - "medium": 2, - "low": 3 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 4, - "dependabot_medium": 2, - "dependabot_low": 3, - "code_scanning_critical": 0, - "code_scanning_high": 2, - "secret_scanning_open": 0, - "open_high_critical": 7 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "flagship/basalt-relay", - "repo_full_name": "demo-org/basalt-relay", - "display_name": "Basalt Relay", - "path": "flagship/basalt-relay", - "section_marker": "flagship/", - "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", - "default_branch": "main" }, - "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/gossamer-ridge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/hollow-tessera", + "display_name": "Hollow Tessera", + "path": "archive/hollow-tessera", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/hollow-tessera", + "default_branch": "main" + }, + "declared": { "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "Rust", - "Tauri 2" + "JavaScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1037, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5421, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "3 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "medium": 1, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 0, - "dependabot_high": 2, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 3 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/hollow-tessera", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/cinder-atlas", - "repo_full_name": "demo-org/cinder-atlas", - "display_name": "Cinder Atlas", - "path": "flagship/cinder-atlas", - "section_marker": "flagship/", + "project_key": "archive/indigo-palisade", + "display_name": "Indigo Palisade", + "path": "archive/indigo-palisade", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/indigo-palisade", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "FastAPI" + "Go" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1174, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is finish from explicit operating path." + "has_ci": false, + "has_license": false, + "readme_char_count": 5558, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "6 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 2, - "high": 3, - "medium": 0, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 1 - }, - "zero_findings": false - } - }, - "dependabot_critical": 2, - "dependabot_high": 3, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 1, - "code_scanning_high": 0, - "secret_scanning_open": 1, - "open_high_critical": 6 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/indigo-palisade", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/dovetail-forge", - "repo_full_name": "demo-org/dovetail-forge", - "display_name": "Dovetail Forge", - "path": "platform/dovetail-forge", - "section_marker": "platform/", + "project_key": "archive/jetty-marquee", + "display_name": "Jetty Marquee", + "path": "archive/jetty-marquee", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/jetty-marquee", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", - "has_tests": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1311, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 5695, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", - "risk_factors": [ - "thin project context" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "medium": 2, - "low": 4 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/jetty-marquee", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 0, - "dependabot_medium": 2, - "dependabot_low": 4, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/kindling-arbor", + "display_name": "Kindling Arbor", + "path": "archive/kindling-arbor", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/kindling-arbor", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "C++" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5832, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/kindling-arbor", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C++" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/ember-conduit", - "repo_full_name": "demo-org/ember-conduit", - "display_name": "Ember Conduit", - "path": "platform/ember-conduit", - "section_marker": "platform/", + "project_key": "archive/lattice-bezel", + "display_name": "Lattice Bezel", + "path": "archive/lattice-bezel", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/lattice-bezel", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "Swift" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1448, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_ci": false, + "has_license": false, + "readme_char_count": 5969, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "1 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 1 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/lattice-bezel", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/fathom-beacon", - "repo_full_name": "demo-org/fathom-beacon", - "display_name": "Fathom Beacon", - "path": "platform/fathom-beacon", - "section_marker": "platform/", + "project_key": "archive/mica-turnstile", + "display_name": "Mica Turnstile", + "path": "archive/mica-turnstile", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/mica-turnstile", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-infra", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "Node" + "Rust" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": true, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1585, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 6106, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "deferred", "risk_factors": [], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "medium": 0, - "low": 0 - }, - "zero_findings": true - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/mica-turnstile", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 0, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/nocturne-spar", + "display_name": "Nocturne Spar", + "path": "archive/nocturne-spar", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/nocturne-spar", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "TypeScript" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 6243, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/nocturne-spar", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/glacier-quill", - "repo_full_name": "demo-org/glacier-quill", - "display_name": "Glacier Quill", - "path": "studio/glacier-quill", - "section_marker": "studio/", + "project_key": "flagship/aurora-ledger", + "display_name": "Aurora Ledger", + "path": "flagship/aurora-ledger", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/aurora-ledger", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Swift", - "SwiftUI" + "TypeScript", + "Next.js" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1722, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "readme_char_count": 900, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "4 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1166,49 +2613,49 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 1, - "high": 2, - "medium": 3, - "low": 1 + "high": 4, + "medium": 2, + "low": 3 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 1, + "high": 2, "note": 0, "warning": 0 }, @@ -1217,17 +2664,17 @@ "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1236,95 +2683,292 @@ } }, "dependabot_critical": 1, - "dependabot_high": 2, - "dependabot_medium": 3, - "dependabot_low": 1, + "dependabot_high": 4, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": 0, - "code_scanning_high": 1, + "code_scanning_high": 2, "secret_scanning_open": 0, - "open_high_critical": 4 + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_context_quality": "full", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/aurora-ledger", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Next.js" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/harbor-lantern", - "repo_full_name": "demo-org/harbor-lantern", - "display_name": "Harbor Lantern", - "path": "studio/harbor-lantern", - "section_marker": "studio/", + "project_key": "flagship/basalt-relay", + "display_name": "Basalt Relay", + "path": "flagship/basalt-relay", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/basalt-relay", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-product", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "React" + "Rust", + "Tauri 2" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1859, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is operate from explicit operating path." + "readme_char_count": 1037, + "release_count": 3 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "moderate", "risk_factors": [ - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1333,68 +2977,68 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 2, "medium": 1, - "low": 2 + "low": 0 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 1, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1403,96 +3047,291 @@ } }, "dependabot_critical": 0, - "dependabot_high": 0, + "dependabot_high": 2, "dependabot_medium": 1, - "dependabot_low": 2, + "dependabot_low": 0, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 1, "secret_scanning_open": 0, - "open_high_critical": 0 + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "studio", + "legacy_context_quality": "standard", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/basalt-relay", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust, Tauri 2" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/ivory-sextant", - "repo_full_name": "demo-org/ivory-sextant", - "display_name": "Ivory Sextant", - "path": "platform/ivory-sextant", - "section_marker": "platform/", + "project_key": "flagship/cinder-atlas", + "display_name": "Cinder Atlas", + "path": "flagship/cinder-atlas", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/cinder-atlas", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Python" + "Python", + "FastAPI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Finish from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1996, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1174, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "1 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1501,652 +3340,1578 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 1, - "medium": 1, - "low": 0 + "critical": 2, + "high": 3, + "medium": 0, + "low": 1 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, + "critical": 1, "high": 0, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "open": 0 + "open": 1 }, - "zero_findings": true + "zero_findings": false } }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": 0, + "dependabot_critical": 2, + "dependabot_high": 3, + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 1, "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 1 + "secret_scanning_open": 1, + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/cinder-atlas", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, FastAPI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/juniper-kiln", - "repo_full_name": "demo-org/juniper-kiln", - "display_name": "Juniper Kiln", - "path": "studio/juniper-kiln", - "section_marker": "studio/", + "project_key": "flagship/meridian-vault", + "display_name": "Meridian Vault", + "path": "flagship/meridian-vault", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/meridian-vault", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "team": "", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Kotlin" + "Python", + "Django" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2133, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 2544, + "release_count": 3 }, "risk": { - "risk_tier": "baseline", - "risk_factors": [], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_tier": "moderate", + "risk_factors": [ + "active-high-severity-alerts" + ], + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": true, - "coverage_state": "complete", + "alerts_available": false, + "coverage_state": "partial", "cohort_member": true, "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, - "medium": 0, + "high": 2, + "medium": 4, "low": 1 }, "zero_findings": false }, "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", "conditional": { - "requested": true, - "result": "modified" + "requested": false, + "result": "failed" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null }, "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", "conditional": { - "requested": true, - "result": "modified" + "requested": false, + "result": "failed" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 2, + "dependabot_medium": 4, + "dependabot_low": 1, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 2 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "full", + "legacy_category": "flagship", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/meridian-vault", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, Django" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/bramble-cistern", + "display_name": "Bramble Cistern", + "path": "lab/bramble-cistern", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/bramble-cistern", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "R" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4599, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/bramble-cistern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 } }, - "dependabot_critical": 0, - "dependabot_high": 0, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 0 + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "R" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "studio", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/kestrel-loom", - "repo_full_name": "demo-org/kestrel-loom", - "display_name": "Kestrel Loom", - "path": "studio/kestrel-loom", - "section_marker": "studio/", + "project_key": "lab/dusk-pergola", + "display_name": "Dusk Pergola", + "path": "lab/dusk-pergola", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/dusk-pergola", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "recent", - "archived": false, "stack": [ - "Ruby" + "OCaml" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 2270, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 4873, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "3 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 3, - "medium": 1, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - } - }, - "dependabot_critical": 0, - "dependabot_high": 3, - "dependabot_medium": 1, - "dependabot_low": 0, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 3 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_context_quality": "standard", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/dusk-pergola", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "OCaml" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/lumen-ferry", - "repo_full_name": "demo-org/lumen-ferry", - "display_name": "Lumen Ferry", - "path": "platform/lumen-ferry", - "section_marker": "platform/", + "project_key": "lab/foxglove-mast", + "display_name": "Foxglove Mast", + "path": "lab/foxglove-mast", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/foxglove-mast", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, + }, + "derived": { "stack": [ - "Go" + "Nim" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": true, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, "has_license": true, - "readme_char_count": 2407, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 5147, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "2 open high/critical security alerts", - "thin project context" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 1, - "medium": 0, - "low": 2 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - } - }, - "dependabot_critical": 1, - "dependabot_high": 1, - "dependabot_medium": 0, - "dependabot_low": 2, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 2 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", + "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "platform", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/foxglove-mast", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Nim" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/meridian-vault", - "repo_full_name": "demo-org/meridian-vault", - "display_name": "Meridian Vault", - "path": "flagship/meridian-vault", - "section_marker": "flagship/", + "project_key": "lab/onyx-placard", + "display_name": "Onyx Placard", + "path": "lab/onyx-placard", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/onyx-placard", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "Django" + "Elixir" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Experiment from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2544, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2818, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "2 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -2155,28 +4920,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 2, - "medium": 4, - "low": 1 + "high": 1, + "medium": 0, + "low": 0 }, "zero_findings": false }, @@ -2193,7 +4958,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2211,102 +4976,299 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 2, - "dependabot_medium": 4, - "dependabot_low": 1, + "dependabot_high": 1, + "dependabot_medium": 0, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 2 + "open_high_critical": 1 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/onyx-placard", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Elixir" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/nimbus-charter", - "repo_full_name": "demo-org/nimbus-charter", - "display_name": "Nimbus Charter", - "path": "studio/nimbus-charter", - "section_marker": "studio/", + "project_key": "lab/pallas-runner", + "display_name": "Pallas Runner", + "path": "lab/pallas-runner", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/pallas-runner", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "JavaScript" + "Rust" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 2681, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2955, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "no meaningful activity in the recent window" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, @@ -2315,28 +5277,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, "high": 0, - "medium": 2, - "low": 3 + "medium": 1, + "low": 1 }, "zero_findings": false }, @@ -2353,7 +5315,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2371,7 +5333,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2379,8 +5341,8 @@ }, "dependabot_critical": 0, "dependabot_high": 0, - "dependabot_medium": 2, - "dependabot_low": 3, + "dependabot_medium": 1, + "dependabot_low": 1, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, @@ -2390,317 +5352,637 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/pallas-runner", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/onyx-placard", - "repo_full_name": "demo-org/onyx-placard", - "display_name": "Onyx Placard", - "path": "lab/onyx-placard", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/quartz-signal", + "display_name": "Quartz Signal", + "path": "lab/quartz-signal", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/quartz-signal", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Elixir" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2818, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3092, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "1 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", + "coverage_state": "stale", "cohort_member": true, "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "receipt_state": "stale", + "source_produced_at": "2026-08-02T21:09:43.833784+00:00", "providers": { "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-02T21:09:43.833784+00:00", "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "medium": 0, - "low": 0 - }, - "zero_findings": false + "counts": null, + "zero_findings": null }, "code_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null }, "secret_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null } }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 1 + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/quartz-signal", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "lab/pallas-runner", - "repo_full_name": "demo-org/pallas-runner", - "display_name": "Pallas Runner", - "path": "lab/pallas-runner", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/solstice-cairn", + "display_name": "Solstice Cairn", + "path": "lab/solstice-cairn", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/solstice-cairn", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "C" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 2955, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3366, + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no CI workflow", - "thin project context" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "medium": 1, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - } - }, - "dependabot_critical": 0, - "dependabot_high": 0, - "dependabot_medium": 1, - "dependabot_low": 1, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, @@ -2710,94 +5992,281 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", + "legacy_status": "manual-only", + "legacy_context_quality": "minimum-viable", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/solstice-cairn", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/quartz-signal", - "repo_full_name": "demo-org/quartz-signal", - "display_name": "Quartz Signal", - "path": "lab/quartz-signal", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/tabard-anvil", + "display_name": "Tabard Anvil", + "path": "lab/tabard-anvil", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/tabard-anvil", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Python" + "Zig" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3092, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 3503, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2812,93 +6281,278 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/tabard-anvil", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Zig" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/rialto-pennant", - "repo_full_name": "demo-org/rialto-pennant", - "display_name": "Rialto Pennant", - "path": "studio/rialto-pennant", - "section_marker": "studio/", + "project_key": "lab/vellum-compass", + "display_name": "Vellum Compass", + "path": "lab/vellum-compass", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/vellum-compass", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, "stack": [ - "TypeScript" + "Haskell" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md" ], "context_file_count": 2, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 3229, - "release_count": 0, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 3777, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", - "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2913,84 +6567,272 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", + "legacy_status": "active", "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/vellum-compass", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Haskell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/solstice-cairn", - "repo_full_name": "demo-org/solstice-cairn", - "display_name": "Solstice Cairn", - "path": "lab/solstice-cairn", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/xenon-parapet", + "display_name": "Xenon Parapet", + "path": "lab/xenon-parapet", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/xenon-parapet", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "C" + "Shell" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3366, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4051, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, @@ -3010,88 +6852,273 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "minimum-viable", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/xenon-parapet", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Shell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/tabard-anvil", - "repo_full_name": "demo-org/tabard-anvil", - "display_name": "Tabard Anvil", - "path": "lab/tabard-anvil", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/zephyr-bastion", + "display_name": "Zephyr Bastion", + "path": "lab/zephyr-bastion", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/zephyr-bastion", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Zig" + "Perl" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": true, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, "has_ci": false, "has_license": true, - "readme_char_count": 3503, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 4325, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3115,902 +7142,2081 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", + "legacy_status": "manual-only", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/zephyr-bastion", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Perl" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/umbra-trellis", - "repo_full_name": "demo-org/umbra-trellis", - "display_name": "Umbra Trellis", - "path": "studio/umbra-trellis", - "section_marker": "studio/", + "project_key": "platform/dovetail-forge", + "display_name": "Dovetail Forge", + "path": "platform/dovetail-forge", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/dovetail-forge", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Lua" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "active-infra", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3640, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1311, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 2, + "low": 4 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 2, + "dependabot_low": 4, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/dovetail-forge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "active-infra" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/vellum-compass", - "repo_full_name": "demo-org/vellum-compass", - "display_name": "Vellum Compass", - "path": "lab/vellum-compass", - "section_marker": "lab/", + "project_key": "platform/ember-conduit", + "display_name": "Ember Conduit", + "path": "platform/ember-conduit", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/ember-conduit", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "Haskell" + "Rust" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 3777, - "release_count": 0, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1448, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 1, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 1 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", + "legacy_context_quality": "full", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ember-conduit", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/wicker-obelisk", - "repo_full_name": "demo-org/wicker-obelisk", - "display_name": "Wicker Obelisk", - "path": "studio/wicker-obelisk", - "section_marker": "studio/", + "project_key": "platform/fathom-beacon", + "display_name": "Fathom Beacon", + "path": "platform/fathom-beacon", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/fathom-beacon", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "PHP" + "TypeScript", + "Node" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "active-infra", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3914, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1585, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No elevated risk factors.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 0, + "low": 0 + }, + "zero_findings": true + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/xenon-parapet", - "repo_full_name": "demo-org/xenon-parapet", - "display_name": "Xenon Parapet", - "path": "lab/xenon-parapet", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, - "stack": [ - "Shell" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4051, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/fathom-beacon", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "active-infra" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Node" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/yarrow-spindle", - "repo_full_name": "demo-org/yarrow-spindle", - "display_name": "Yarrow Spindle", - "path": "studio/yarrow-spindle", - "section_marker": "studio/", + "project_key": "platform/ivory-sextant", + "display_name": "Ivory Sextant", + "path": "platform/ivory-sextant", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ivory-sextant", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Java" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4188, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1996, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 1, + "dependabot_medium": 1, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 1 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "manual-only", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/zephyr-bastion", - "repo_full_name": "demo-org/zephyr-bastion", - "display_name": "Zephyr Bastion", - "path": "lab/zephyr-bastion", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, - "stack": [ - "Perl" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 4325, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ivory-sextant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/amber-thicket", - "repo_full_name": "demo-org/amber-thicket", - "display_name": "Amber Thicket", - "path": "studio/amber-thicket", - "section_marker": "studio/", + "project_key": "platform/lumen-ferry", + "display_name": "Lumen Ferry", + "path": "platform/lumen-ferry", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/lumen-ferry", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "recent", - "archived": false, "stack": [ - "Dart", - "Flutter" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4462, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2407, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 1, + "medium": 0, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 1, + "dependabot_high": 1, + "dependabot_medium": 0, + "dependabot_low": 2, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/bramble-cistern", - "repo_full_name": "demo-org/bramble-cistern", - "display_name": "Bramble Cistern", - "path": "lab/bramble-cistern", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "R" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 4599, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": false, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/lumen-ferry", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/cobalt-wharf", - "repo_full_name": "demo-org/cobalt-wharf", - "display_name": "Cobalt Wharf", - "path": "studio/cobalt-wharf", - "section_marker": "studio/", - "has_git": true, + "project_key": "studio/amber-thicket", + "display_name": "Amber Thicket", + "path": "studio/amber-thicket", "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/amber-thicket", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Scala" + "Dart", + "Flutter" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4736, - "release_count": 0, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 4462, + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, - "doctor_gap": true, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4034,86 +9240,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/amber-thicket", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Dart, Flutter" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/dusk-pergola", - "repo_full_name": "demo-org/dusk-pergola", - "display_name": "Dusk Pergola", - "path": "lab/dusk-pergola", - "section_marker": "lab/", + "project_key": "studio/cobalt-wharf", + "display_name": "Cobalt Wharf", + "path": "studio/cobalt-wharf", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/cobalt-wharf", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "OCaml" + "Scala" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 4873, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 4736, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4137,84 +9527,268 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", + "legacy_status": "manual-only", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/cobalt-wharf", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Scala" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { "project_key": "studio/errant-fathom", - "repo_full_name": "demo-org/errant-fathom", "display_name": "Errant Fathom", "path": "studio/errant-fathom", - "section_marker": "studio/", - "has_git": true, "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/errant-fathom", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ "TypeScript" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, "readme_char_count": 5010, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4242,496 +9816,1783 @@ "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/errant-fathom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/foxglove-mast", - "repo_full_name": "demo-org/foxglove-mast", - "display_name": "Foxglove Mast", - "path": "lab/foxglove-mast", - "section_marker": "lab/", + "project_key": "studio/glacier-quill", + "display_name": "Glacier Quill", + "path": "studio/glacier-quill", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/glacier-quill", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Nim" + "Swift", + "SwiftUI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 5147, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1722, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 2, + "medium": 3, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "note": 0, + "warning": 0 + }, + "zero_findings": false + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 1, + "dependabot_high": 2, + "dependabot_medium": 3, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 1, + "secret_scanning_open": 0, + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "archive/gossamer-ridge", - "repo_full_name": "demo-org/gossamer-ridge", - "display_name": "Gossamer Ridge", - "path": "archive/gossamer-ridge", - "section_marker": "archive/", + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/glacier-quill", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift, SwiftUI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "studio/harbor-lantern", + "display_name": "Harbor Lantern", + "path": "studio/harbor-lantern", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/harbor-lantern", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Python" + "TypeScript", + "React" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5284, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "active-product", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1859, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 1, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 1, + "dependabot_low": 2, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/harbor-lantern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "active-product" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, React" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/hollow-tessera", - "repo_full_name": "demo-org/hollow-tessera", - "display_name": "Hollow Tessera", - "path": "archive/hollow-tessera", - "section_marker": "archive/", + "project_key": "studio/juniper-kiln", + "display_name": "Juniper Kiln", + "path": "studio/juniper-kiln", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/juniper-kiln", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "JavaScript" + "Kotlin" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5421, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2133, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No elevated risk factors.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 0, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/juniper-kiln", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Kotlin" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/indigo-palisade", - "repo_full_name": "demo-org/indigo-palisade", - "display_name": "Indigo Palisade", - "path": "archive/indigo-palisade", - "section_marker": "archive/", + "project_key": "studio/kestrel-loom", + "display_name": "Kestrel Loom", + "path": "studio/kestrel-loom", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/kestrel-loom", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5558, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2270, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 3, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 3, + "dependabot_medium": 1, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/kestrel-loom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/jetty-marquee", - "repo_full_name": "demo-org/jetty-marquee", - "display_name": "Jetty Marquee", - "path": "archive/jetty-marquee", - "section_marker": "archive/", + "project_key": "studio/nimbus-charter", + "display_name": "Nimbus Charter", + "path": "studio/nimbus-charter", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/nimbus-charter", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Ruby" + "JavaScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 5695, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2681, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is partial.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 2, + "low": 3 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, @@ -4741,94 +11602,342 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "archive/kindling-arbor", - "repo_full_name": "demo-org/kindling-arbor", - "display_name": "Kindling Arbor", - "path": "archive/kindling-arbor", - "section_marker": "archive/", + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/nimbus-charter", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "studio/rialto-pennant", + "display_name": "Rialto Pennant", + "path": "studio/rialto-pennant", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/rialto-pennant", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "C++" + "TypeScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5832, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3229, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, + "coverage_state": "stale", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "stale", + "source_produced_at": "2026-08-02T21:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "code_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + } + }, "dependabot_critical": null, "dependabot_high": null, "dependabot_medium": null, @@ -4842,83 +11951,275 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "manual-only", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/rialto-pennant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/lattice-bezel", - "repo_full_name": "demo-org/lattice-bezel", - "display_name": "Lattice Bezel", - "path": "archive/lattice-bezel", - "section_marker": "archive/", + "project_key": "studio/umbra-trellis", + "display_name": "Umbra Trellis", + "path": "studio/umbra-trellis", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/umbra-trellis", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Swift" + "Lua" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5969, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3640, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4938,87 +12239,272 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/umbra-trellis", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Lua" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/mica-turnstile", - "repo_full_name": "demo-org/mica-turnstile", - "display_name": "Mica Turnstile", - "path": "archive/mica-turnstile", - "section_marker": "archive/", + "project_key": "studio/wicker-obelisk", + "display_name": "Wicker Obelisk", + "path": "studio/wicker-obelisk", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/wicker-obelisk", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Rust" + "PHP" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 6106, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3914, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5042,84 +12528,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/wicker-obelisk", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "PHP" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/nocturne-spar", - "repo_full_name": "demo-org/nocturne-spar", - "display_name": "Nocturne Spar", - "path": "archive/nocturne-spar", - "section_marker": "archive/", + "project_key": "studio/yarrow-spindle", + "display_name": "Yarrow Spindle", + "path": "studio/yarrow-spindle", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/yarrow-spindle", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "TypeScript" + "Java" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 6243, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4188, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5143,34 +12815,238 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/yarrow-spindle", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Java" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] } ], "rollups": { "risk_tier_counts": { "elevated": 10, - "moderate": 12, - "baseline": 10, - "deferred": 8 + "moderate": 6, + "baseline": 13, + "deferred": 11 }, "security": { - "coverage_state": "partial", + "scanned_count": 10, + "unavailable_count": 30, "complete_repo_count": 10, "partial_repo_count": 6, "stale_count": 2, "unknown_count": 22, - "scanned_count": 10, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "dependabot_observed_count": 16, + "code_scanning_observed_count": 10, + "secret_scanning_observed_count": 10, + "dependabot_zero_finding_count": 1, + "code_scanning_zero_finding_count": 6, + "secret_scanning_zero_finding_count": 9, + "remote_default_branch_observed_count": 16, + "remote_default_branch_partial_count": 0, + "remote_default_branch_stale_count": 2, + "remote_default_branch_unavailable_count": 22, + "coverage_state": "partial", "repos_with_open_high_critical": 10, "total_open_high": 20, "total_open_critical": 5 }, "decision": { - "decision_needed_count": 3, - "default_attention_count": 10 + "decision_needed_count": 9, + "default_attention_count": 12 } } } \ No newline at end of file diff --git a/output/demo/portfolio-truth-latest.json b/output/demo/portfolio-truth-latest.json index 1bb28df8..42a0f72b 100644 --- a/output/demo/portfolio-truth-latest.json +++ b/output/demo/portfolio-truth-latest.json @@ -1,15 +1,98 @@ { "schema_version": "0.11.0", + "generated_at": "2026-08-03T22:09:43.833784+00:00", "derivation_policy_version": "portfolio_attention.v3", - "generated_at": "2026-08-01T22:50:13.825998+00:00", - "workspace_root": "/demo-workspace", - "producer": { - "repository": "demo-org/portfolio-auditor", - "checkout_role": "demo-fixture", - "worktree_clean": true, - "dirty_path_count": 0, - "verified_at": "2026-08-01T22:50:13.825998+00:00" + "producer": {}, + "inputs": { + "catalog": { + "source_id": "portfolio-catalog", + "sha256": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00" + }, + "workspace": { + "source_id": "projects-root", + "observed_at": "2026-08-03T22:09:43.833784+00:00" + }, + "notion": { + "mode": "unavailable", + "observed_at": null, + "carried_from_generated_at": null + }, + "github_security": { + "source_id": "github-security-coverage-receipt", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "produced_at": "2026-08-03T22:09:43.833784+00:00", + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 18, + "path": "/demo-workspace/github-security-coverage.json", + "receipt_id": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", + "content_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" + } + }, + "coverage": [ + { + "source": "workspace", + "state": "observed", + "project_count": 40 + }, + { + "source": "git", + "state": "observed", + "observed_count": 40, + "project_count": 40 + }, + { + "source": "github_security", + "state": "partial", + "scanned_count": 10, + "complete_repo_count": 10, + "partial_repo_count": 6, + "stale_count": 2, + "unknown_count": 22, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "provider_observed_counts": { + "dependabot": 16, + "code_scanning": 10, + "secret_scanning": 10 + }, + "provider_zero_finding_counts": { + "dependabot": 1, + "code_scanning": 6, + "secret_scanning": 9 + }, + "remote_default_branch_counts": { + "observed": 16, + "partial": 0, + "stale": 2, + "credential_unavailable": 0, + "forbidden": 0, + "not_found": 0, + "rate_limited": 0, + "transient_error": 0, + "malformed": 0, + "not_requested": 0, + "unknown": 22 + }, + "project_count": 40 + }, + { + "source": "notion", + "state": "unknown", + "observed_count": 0 + } + ], + "exclusions": { + "policy_version": "workspace_discovery.v2", + "counts": {} }, + "workspace_root": "/demo-workspace", "source_summary": { "workspace_root": "/demo-workspace", "project_count": 40, @@ -17,1147 +100,2511 @@ "catalog_warnings": [], "legacy_registry_rows": 40, "notion_context_rows": 0, - "notion_context_carried_forward": 0, + "notion_context_carried_forward": false, "context_quality_counts": { + "none": 8, "full": 8, "standard": 8, "minimum-viable": 8, - "boilerplate": 8, - "none": 8 + "boilerplate": 8 }, "activity_status_counts": { + "stale": 19, "active": 9, - "recent": 12, - "stale": 19 + "recent": 12 }, + "archived_count": 8, "attention_state_counts": { - "active-product": 3, - "decision-needed": 3, - "active-infra": 4, - "manual-only": 7, + "archived": 8, + "decision-needed": 9, "experiment": 8, "parked": 7, - "archived": 8 + "manual-only": 5, + "active-infra": 2, + "active-product": 1 }, - "archived_count": 8, "github_archived_count": 0, "duplicate_display_names": [], "unresolved_duplicate_display_names": [] }, "precedence_matrix": { - "identity": [ - "demo fixture" + "declared.owner": [ + "catalog_repo", + "catalog_group" + ], + "declared.team": [ + "catalog_repo", + "catalog_group" + ], + "declared.purpose": [ + "catalog_repo", + "catalog_group" + ], + "declared.lifecycle_state": [ + "catalog_repo", + "catalog_group" + ], + "declared.criticality": [ + "catalog_repo", + "catalog_group" + ], + "declared.review_cadence": [ + "catalog_repo", + "catalog_group" + ], + "declared.intended_disposition": [ + "catalog_repo", + "catalog_group" + ], + "declared.maturity_program": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.target_maturity": [ + "catalog_repo", + "catalog_group", + "catalog_defaults" + ], + "declared.operating_path": [ + "normalized" + ], + "declared.category": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "declared.tool_provenance": [ + "catalog_repo", + "catalog_group", + "inference", + "legacy_registry" + ], + "declared.notes": [ + "catalog_repo", + "catalog_group", + "legacy_registry" + ], + "derived.stack": [ + "workspace", + "legacy_registry" + ], + "derived.context_quality": [ + "workspace", + "catalog_repo", + "catalog_group" + ], + "derived.context_files": [ + "workspace" ], - "declared": [ - "demo fixture" + "derived.primary_context_file": [ + "workspace" ], - "derived": [ - "demo fixture" + "derived.project_summary_present": [ + "workspace" ], - "risk": [ - "demo fixture" + "derived.current_state_present": [ + "workspace" ], - "security": [ - "demo fixture receipt" + "derived.stack_present": [ + "workspace" + ], + "derived.run_instructions_present": [ + "workspace" + ], + "derived.known_risks_present": [ + "workspace" + ], + "derived.next_recommended_move_present": [ + "workspace" + ], + "derived.last_meaningful_activity_at": [ + "git", + "workspace" + ], + "derived.activity_status": [ + "derived" + ], + "derived.archived": [ + "derived" + ], + "derived.attention_state": [ + "derived" + ], + "derived.path_override": [ + "normalized" + ], + "derived.path_confidence": [ + "normalized" + ], + "derived.path_rationale": [ + "normalized" + ], + "derived.has_tests": [ + "workspace" + ], + "derived.has_ci": [ + "workspace" + ], + "derived.readme_char_count": [ + "workspace" ] }, - "coverage": [ - { - "source": "workspace", - "state": "observed", - "project_count": 40 - }, - { - "source": "github_security", - "state": "partial", - "project_count": 40, - "complete_repo_count": 10, - "partial_repo_count": 6, - "stale_count": 2, - "unknown_count": 22 - } - ], - "exclusions": [], - "inputs": [], "warnings": [], "projects": [ { "identity": { - "project_key": "flagship/aurora-ledger", - "repo_full_name": "demo-org/aurora-ledger", - "display_name": "Aurora Ledger", - "path": "flagship/aurora-ledger", - "section_marker": "flagship/", + "project_key": "archive/gossamer-ridge", + "display_name": "Gossamer Ridge", + "path": "archive/gossamer-ridge", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/gossamer-ridge", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "TypeScript", - "Next.js" + "Python" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 900, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5284, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "7 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 4, - "medium": 2, - "low": 3 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 1, - "dependabot_high": 4, - "dependabot_medium": 2, - "dependabot_low": 3, - "code_scanning_critical": 0, - "code_scanning_high": 2, - "secret_scanning_open": 0, - "open_high_critical": 7 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "flagship/basalt-relay", - "repo_full_name": "demo-org/basalt-relay", - "display_name": "Basalt Relay", - "path": "flagship/basalt-relay", - "section_marker": "flagship/", - "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", - "default_branch": "main" }, - "declared": { - "operating_path": "operate", - "category": "flagship", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/gossamer-ridge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/gossamer-ridge", + "head": "8adcd37f116d59aaf20b40eaa0cdeab86dfb94991e5a55bc38d5dd9fe605999a", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/hollow-tessera", + "display_name": "Hollow Tessera", + "path": "archive/hollow-tessera", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/hollow-tessera", + "default_branch": "main" + }, + "declared": { "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-product", - "activity_status": "active", - "archived": false, "stack": [ - "Rust", - "Tauri 2" + "JavaScript" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1037, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is operate from explicit operating path." + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5421, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "3 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 2, - "medium": 1, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 0, - "dependabot_high": 2, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 1, - "secret_scanning_open": 0, - "open_high_critical": 3 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/hollow-tessera", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/hollow-tessera", + "head": "2bde0b8985233649f988ae61d8e1a350bd9b26afe38ba77b1574fc9c7c62ddde", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/cinder-atlas", - "repo_full_name": "demo-org/cinder-atlas", - "display_name": "Cinder Atlas", - "path": "flagship/cinder-atlas", - "section_marker": "flagship/", + "project_key": "archive/indigo-palisade", + "display_name": "Indigo Palisade", + "path": "archive/indigo-palisade", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/indigo-palisade", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "FastAPI" + "Go" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1174, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is finish from explicit operating path." + "has_ci": false, + "has_license": false, + "readme_char_count": 5558, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "6 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 2, - "high": 3, - "medium": 0, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": false - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 1 - }, - "zero_findings": false - } - }, - "dependabot_critical": 2, - "dependabot_high": 3, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 1, - "code_scanning_high": 0, - "secret_scanning_open": 1, - "open_high_critical": 6 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "flagship", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/indigo-palisade", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/indigo-palisade", + "head": "f0dbcdef099e2f12e660a25ffb9724167b98e93d62a073c88ba225ab08c72b01", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/dovetail-forge", - "repo_full_name": "demo-org/dovetail-forge", - "display_name": "Dovetail Forge", - "path": "platform/dovetail-forge", - "section_marker": "platform/", + "project_key": "archive/jetty-marquee", + "display_name": "Jetty Marquee", + "path": "archive/jetty-marquee", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/jetty-marquee", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", - "has_tests": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1311, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 5695, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", - "risk_factors": [ - "thin project context" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "medium": 2, - "low": 4 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/jetty-marquee", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/jetty-marquee", + "head": "4e37a4b211dcf18c9df7cc6741b9553564f7833d2c15bae2391c3ad96ab523a7", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 0, - "dependabot_medium": 2, - "dependabot_low": 4, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/kindling-arbor", + "display_name": "Kindling Arbor", + "path": "archive/kindling-arbor", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/kindling-arbor", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "C++" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 5832, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/kindling-arbor", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/kindling-arbor", + "head": "f20d19345ed9ba389f768e1a1655904e97a05296ed26879867f8d512e8b60e55", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C++" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/ember-conduit", - "repo_full_name": "demo-org/ember-conduit", - "display_name": "Ember Conduit", - "path": "platform/ember-conduit", - "section_marker": "platform/", + "project_key": "archive/lattice-bezel", + "display_name": "Lattice Bezel", + "path": "archive/lattice-bezel", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/lattice-bezel", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "Swift" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 1448, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_ci": false, + "has_license": false, + "readme_char_count": 5969, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "1 open high/critical security alerts" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "medium": 0, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true - } - }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 1 + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/lattice-bezel", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/lattice-bezel", + "head": "2610bee9ecd0d6021c000352f707de6bd4b14266961546fde08835a4501e1f8f", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/fathom-beacon", - "repo_full_name": "demo-org/fathom-beacon", - "display_name": "Fathom Beacon", - "path": "platform/fathom-beacon", - "section_marker": "platform/", + "project_key": "archive/mica-turnstile", + "display_name": "Mica Turnstile", + "path": "archive/mica-turnstile", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/mica-turnstile", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "active-infra", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "Node" + "Rust" ], - "stack_present": true, + "context_quality": "none", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": true, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, - "has_license": true, - "readme_char_count": 1585, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "has_license": false, + "readme_char_count": 6106, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "deferred", "risk_factors": [], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "Archived or archive-path project.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": true, - "coverage_state": "complete", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "medium": 0, - "low": 0 - }, - "zero_findings": true - }, - "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true - }, - "secret_scanning": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/mica-turnstile", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "path": "/demo-workspace/archive/mica-turnstile", + "head": "db63c3180e5bc5c00c912da9d9cca2b89034693953974b9892be5b94062b1e82", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" }, - "dependabot_critical": 0, - "dependabot_high": 0, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "archive/nocturne-spar", + "display_name": "Nocturne Spar", + "path": "archive/nocturne-spar", + "top_level_dir": "archive", + "group_key": "archive", + "group_label": "Archived", + "section_marker": "archive/", + "section_label": "Archived", + "has_git": true, + "repo_full_name": "demo-org/nocturne-spar", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Archived project retained for historical continuity.", + "lifecycle_state": "archived", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "archive", + "category": "it-work", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": false + }, + "derived": { + "stack": [ + "TypeScript" + ], + "context_quality": "none", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": true, + "attention_state": "archived", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": false, + "has_license": false, + "readme_char_count": 6243, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Archived or archive-path project.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "platform", + "legacy_status": "archived", + "legacy_context_quality": "none", + "legacy_category": "archive", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/archive/nocturne-spar", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/archive/nocturne-spar", + "head": "6f5e62b92a004211d4adc5986895c2b75063d4eb7400b67dba09befb5d02ca69", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "it-work" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Archived project retained for historical continuity." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "archived" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "none" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Archive from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/glacier-quill", - "repo_full_name": "demo-org/glacier-quill", - "display_name": "Glacier Quill", - "path": "studio/glacier-quill", - "section_marker": "studio/", + "project_key": "flagship/aurora-ledger", + "display_name": "Aurora Ledger", + "path": "flagship/aurora-ledger", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/aurora-ledger", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "active", - "archived": false, "stack": [ - "Swift", - "SwiftUI" + "TypeScript", + "Next.js" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1722, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "readme_char_count": 900, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "4 open high/critical security alerts", - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1166,49 +2613,49 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 1, - "high": 2, - "medium": 3, - "low": 1 + "high": 4, + "medium": 2, + "low": 3 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 1, + "high": 2, "note": 0, "warning": 0 }, @@ -1217,17 +2664,17 @@ "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1236,95 +2683,292 @@ } }, "dependabot_critical": 1, - "dependabot_high": 2, - "dependabot_medium": 3, - "dependabot_low": 1, + "dependabot_high": 4, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": 0, - "code_scanning_high": 1, + "code_scanning_high": 2, "secret_scanning_open": 0, - "open_high_critical": 4 + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_context_quality": "full", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/aurora-ledger", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/aurora-ledger", + "head": "3fe2c06cdac61e60f0abced439f4c0ea2312d54dd314cf09631cc032f5f30549", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Next.js" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/harbor-lantern", - "repo_full_name": "demo-org/harbor-lantern", - "display_name": "Harbor Lantern", - "path": "studio/harbor-lantern", - "section_marker": "studio/", + "project_key": "flagship/basalt-relay", + "display_name": "Basalt Relay", + "path": "flagship/basalt-relay", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/basalt-relay", "default_branch": "main" }, "declared": { - "operating_path": "operate", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "active-product", - "activity_status": "recent", - "archived": false, "stack": [ - "TypeScript", - "React" + "Rust", + "Tauri 2" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1859, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is operate from explicit operating path." + "readme_char_count": 1037, + "release_count": 3 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "moderate", "risk_factors": [ - "thin project context" + "active-high-severity-alerts" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1333,68 +2977,68 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 2, "medium": 1, - "low": 2 + "low": 0 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, + "high": 1, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "open": 0 @@ -1403,96 +3047,291 @@ } }, "dependabot_critical": 0, - "dependabot_high": 0, + "dependabot_high": 2, "dependabot_medium": 1, - "dependabot_low": 2, + "dependabot_low": 0, "code_scanning_critical": 0, - "code_scanning_high": 0, + "code_scanning_high": 1, "secret_scanning_open": 0, - "open_high_critical": 0 + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "studio", + "legacy_context_quality": "standard", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/basalt-relay", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/basalt-relay", + "head": "5756778ed7c8d9b653dc146593c1e6d370d8db2c2e3d9d4a482928cef1535a75", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust, Tauri 2" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/ivory-sextant", - "repo_full_name": "demo-org/ivory-sextant", - "display_name": "Ivory Sextant", - "path": "platform/ivory-sextant", - "section_marker": "platform/", + "project_key": "flagship/cinder-atlas", + "display_name": "Cinder Atlas", + "path": "flagship/cinder-atlas", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/cinder-atlas", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "commercial", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Python" + "Python", + "FastAPI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Finish from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 1996, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1174, + "release_count": 3 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "1 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": true, @@ -1501,652 +3340,1578 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, - "high": 1, - "medium": 1, - "low": 0 + "critical": 2, + "high": 3, + "medium": 0, + "low": 1 }, "zero_findings": false }, "code_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "critical": 0, + "critical": 1, "high": 0, "note": 0, "warning": 0 }, - "zero_findings": true + "zero_findings": false }, "secret_scanning": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { - "open": 0 + "open": 1 }, - "zero_findings": true + "zero_findings": false } }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 1, - "dependabot_low": 0, - "code_scanning_critical": 0, + "dependabot_critical": 2, + "dependabot_high": 3, + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 1, "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 1 + "secret_scanning_open": 1, + "open_high_critical": 5 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", - "legacy_category": "platform", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "flagship", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/cinder-atlas", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/cinder-atlas", + "head": "44f9898452a5ffbf49c27bcc50158bbb5e74cc21b81132031e80205f3bc3c777", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, FastAPI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/juniper-kiln", - "repo_full_name": "demo-org/juniper-kiln", - "display_name": "Juniper Kiln", - "path": "studio/juniper-kiln", - "section_marker": "studio/", + "project_key": "flagship/meridian-vault", + "display_name": "Meridian Vault", + "path": "flagship/meridian-vault", + "top_level_dir": "flagship", + "group_key": "flagship", + "group_label": "Flagship Products", + "section_marker": "flagship/", + "section_label": "Flagship Products", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/meridian-vault", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", + "team": "", + "purpose": "Operator-facing product surface with an active release lane.", + "lifecycle_state": "active", + "criticality": "high", + "review_cadence": "weekly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Kotlin" + "Python", + "Django" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2133, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 2544, + "release_count": 3 }, "risk": { - "risk_tier": "baseline", - "risk_factors": [], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_tier": "moderate", + "risk_factors": [ + "active-high-severity-alerts" + ], + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": true, - "coverage_state": "complete", + "alerts_available": false, + "coverage_state": "partial", "cohort_member": true, "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 0, - "medium": 0, + "high": 2, + "medium": 4, "low": 1 }, "zero_findings": false }, "code_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", "conditional": { - "requested": true, - "result": "modified" + "requested": false, + "result": "failed" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "note": 0, - "warning": 0 - }, - "zero_findings": true + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null }, "secret_scanning": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", "conditional": { - "requested": true, - "result": "modified" + "requested": false, + "result": "failed" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "open": 0 - }, - "zero_findings": true + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 2, + "dependabot_medium": 4, + "dependabot_low": 1, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 2 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "full", + "legacy_category": "flagship", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/flagship/meridian-vault", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/flagship/meridian-vault", + "head": "9d60c05a561dbebe1bd61215141fb9b7b96c011f8d15c7013c6a2c762bd91f5d", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "high" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Operator-facing product surface with an active release lane." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "weekly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python, Django" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "lab/bramble-cistern", + "display_name": "Bramble Cistern", + "path": "lab/bramble-cistern", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/bramble-cistern", + "default_branch": "main" + }, + "declared": { + "owner": "demo-operator", + "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", + "notes": "", + "doctor_standard": "", + "automation_eligible": true + }, + "derived": { + "stack": [ + "R" + ], + "context_quality": "boilerplate", + "context_files": [ + "AGENTS.md" + ], + "context_file_count": 1, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4599, + "release_count": 0 + }, + "risk": { + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false + }, + "security": { + "alerts_available": false, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/bramble-cistern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 } }, - "dependabot_critical": 0, - "dependabot_high": 0, - "dependabot_medium": 0, - "dependabot_low": 1, - "code_scanning_critical": 0, - "code_scanning_high": 0, - "secret_scanning_open": 0, - "open_high_critical": 0 + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/bramble-cistern", + "head": "11e2cfd5e731c86319b7c599c190f10a8a83c8e398cc1b3ffa1d58e811c00b8b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "R" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "studio", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/kestrel-loom", - "repo_full_name": "demo-org/kestrel-loom", - "display_name": "Kestrel Loom", - "path": "studio/kestrel-loom", - "section_marker": "studio/", + "project_key": "lab/dusk-pergola", + "display_name": "Dusk Pergola", + "path": "lab/dusk-pergola", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/dusk-pergola", "default_branch": "main" }, "declared": { - "operating_path": "finish", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "decision-needed", - "activity_status": "recent", - "archived": false, "stack": [ - "Ruby" + "OCaml" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 2270, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is finish from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 4873, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "3 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, - "context_risk": true, - "path_risk": true + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 3, - "medium": 1, - "low": 0 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - } - }, - "dependabot_critical": 0, - "dependabot_high": 3, - "dependabot_medium": 1, - "dependabot_low": 0, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 3 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_context_quality": "standard", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/dusk-pergola", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/dusk-pergola", + "head": "c8a3e36a9b65dfab4ca9f568cb429bd974c5f20dca7d428217be29b381a61675", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "OCaml" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "platform/lumen-ferry", - "repo_full_name": "demo-org/lumen-ferry", - "display_name": "Lumen Ferry", - "path": "platform/lumen-ferry", - "section_marker": "platform/", + "project_key": "lab/foxglove-mast", + "display_name": "Foxglove Mast", + "path": "lab/foxglove-mast", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "platform", - "group_key": "platform", - "group_label": "Platform and Infrastructure", - "section_label": "Platform and Infrastructure", + "repo_full_name": "demo-org/foxglove-mast", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "platform", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Shared platform service other demo projects depend on.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, + }, + "derived": { "stack": [ - "Go" + "Nim" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, + "stack_present": false, "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": true, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": false, "has_ci": true, "has_license": true, - "readme_char_count": 2407, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 5147, + "release_count": 0 }, "risk": { "risk_tier": "elevated", "risk_factors": [ - "2 open high/critical security alerts", - "thin project context" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 1, - "high": 1, - "medium": 0, - "low": 2 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - } - }, - "dependabot_critical": 1, - "dependabot_high": 1, - "dependabot_medium": 0, - "dependabot_low": 2, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 2 + "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", + "legacy_status": "active", "legacy_context_quality": "boilerplate", - "legacy_category": "platform", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/foxglove-mast", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/foxglove-mast", + "head": "abb74ce2b39179f881bf62ada601b549a2e982b67c136e6613886449fea8d2d0", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Nim" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "flagship/meridian-vault", - "repo_full_name": "demo-org/meridian-vault", - "display_name": "Meridian Vault", - "path": "flagship/meridian-vault", - "section_marker": "flagship/", + "project_key": "lab/onyx-placard", + "display_name": "Onyx Placard", + "path": "lab/onyx-placard", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "flagship", - "group_key": "flagship", - "group_label": "Flagship Products", - "section_label": "Flagship Products", + "repo_full_name": "demo-org/onyx-placard", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "flagship", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Operator-facing product surface with an active release lane.", "owner": "demo-operator", "team": "", - "criticality": "high", - "review_cadence": "weekly", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", + "criticality": "medium", + "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "active-infra", - "activity_status": "active", - "archived": false, "stack": [ - "Python", - "Django" + "Elixir" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Experiment from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2544, - "release_count": 3, - "path_override": "", - "path_confidence": "high", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2818, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", + "risk_tier": "moderate", "risk_factors": [ - "2 open high/critical security alerts" + "active-high-severity-alerts" ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, @@ -2155,28 +4920,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, - "high": 2, - "medium": 4, - "low": 1 + "high": 1, + "medium": 0, + "low": 0 }, "zero_findings": false }, @@ -2193,7 +4958,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2211,102 +4976,299 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null } }, "dependabot_critical": 0, - "dependabot_high": 2, - "dependabot_medium": 4, - "dependabot_low": 1, + "dependabot_high": 1, + "dependabot_medium": 0, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 2 + "open_high_critical": 1 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/onyx-placard", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/onyx-placard", + "head": "ee62b3c5ff1c6a16ff0044f27d295ec0d0e2edb1c76550a46ed8586945b30bc4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Elixir" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "full", - "legacy_category": "flagship", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/nimbus-charter", - "repo_full_name": "demo-org/nimbus-charter", - "display_name": "Nimbus Charter", - "path": "studio/nimbus-charter", - "section_marker": "studio/", + "project_key": "lab/pallas-runner", + "display_name": "Pallas Runner", + "path": "lab/pallas-runner", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/pallas-runner", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "standard", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "JavaScript" + "Rust" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 2681, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2955, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "no meaningful activity in the recent window" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, @@ -2315,28 +5277,28 @@ "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", "providers": { "dependabot": { "state": "observed", "completed": true, - "reason": "observed", + "reason": null, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": true, "counts": { "critical": 0, "high": 0, - "medium": 2, - "low": 3 + "medium": 1, + "low": 1 }, "zero_findings": false }, @@ -2353,7 +5315,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2371,7 +5333,7 @@ }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-03T22:09:43.833784+00:00", "pagination_complete": false, "counts": null, "zero_findings": null @@ -2379,8 +5341,8 @@ }, "dependabot_critical": 0, "dependabot_high": 0, - "dependabot_medium": 2, - "dependabot_low": 3, + "dependabot_medium": 1, + "dependabot_low": 1, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, @@ -2390,317 +5352,637 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/pallas-runner", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/pallas-runner", + "head": "b3617c50b2f66229297747d9d163c1c59fb6dc1bffd236386c7908df64fed5d9", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/onyx-placard", - "repo_full_name": "demo-org/onyx-placard", - "display_name": "Onyx Placard", - "path": "lab/onyx-placard", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/quartz-signal", + "display_name": "Quartz Signal", + "path": "lab/quartz-signal", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/quartz-signal", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Elixir" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 2818, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 3092, + "release_count": 0 }, "risk": { - "risk_tier": "elevated", - "risk_factors": [ - "1 open high/critical security alerts", - "thin project context" - ], - "risk_summary": "Open high or critical alerts need an operator decision.", - "security_risk": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", + "coverage_state": "stale", "cohort_member": true, "cohort_policy": "portfolio-default-attention-v1", "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "receipt_state": "stale", + "source_produced_at": "2026-08-02T21:09:43.833784+00:00", "providers": { "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": { "requested": true, "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", + "observed_at": "2026-08-02T21:09:43.833784+00:00", "pagination_complete": true, - "counts": { - "critical": 0, - "high": 1, - "medium": 0, - "low": 0 - }, - "zero_findings": false + "counts": null, + "zero_findings": null }, "code_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null }, "secret_scanning": { - "state": "not_found", + "state": "stale", "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", "conditional": { - "requested": false, - "result": "failed" + "requested": true, + "result": "modified" }, "etag": null, "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "pagination_complete": true, "counts": null, "zero_findings": null } }, - "dependabot_critical": 0, - "dependabot_high": 1, - "dependabot_medium": 0, - "dependabot_low": 0, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 1 + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, + "code_scanning_critical": null, + "code_scanning_high": null, + "secret_scanning_open": null, + "open_high_critical": 0 + }, + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/quartz-signal", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/quartz-signal", + "head": "f0880b359ae6df38b4ea8eae386c6eca43085e5cfe95ccb0814289e3427cbac2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "minimum-viable", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "lab/pallas-runner", - "repo_full_name": "demo-org/pallas-runner", - "display_name": "Pallas Runner", - "path": "lab/pallas-runner", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/solstice-cairn", + "display_name": "Solstice Cairn", + "path": "lab/solstice-cairn", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/solstice-cairn", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "active", - "archived": false, "stack": [ - "Rust" + "C" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-30T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 2955, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3366, + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no CI workflow", - "thin project context" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "partial", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "fresh", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", - "providers": { - "dependabot": { - "state": "observed", - "completed": true, - "reason": "observed", - "reason_code": "observed", - "http_status": 200, - "http_classification": "ok", - "conditional": { - "requested": true, - "result": "modified" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": true, - "counts": { - "critical": 0, - "high": 0, - "medium": 1, - "low": 1 - }, - "zero_findings": false - }, - "code_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - }, - "secret_scanning": { - "state": "not_found", - "completed": false, - "reason": "github_not_found", - "reason_code": "endpoint_unsupported", - "http_status": 404, - "http_classification": "github_not_found", - "conditional": { - "requested": false, - "result": "failed" - }, - "etag": null, - "last_modified": null, - "observed_at": "2026-08-01T22:50:13.825998+00:00", - "pagination_complete": false, - "counts": null, - "zero_findings": null - } - }, - "dependabot_critical": 0, - "dependabot_high": 0, - "dependabot_medium": 1, - "dependabot_low": 1, + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", + "providers": {}, + "dependabot_critical": null, + "dependabot_high": null, + "dependabot_medium": null, + "dependabot_low": null, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, @@ -2710,94 +5992,281 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", + "legacy_status": "manual-only", + "legacy_context_quality": "minimum-viable", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/solstice-cairn", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/solstice-cairn", + "head": "f88738445f00c41b9915812a478d50676b4a5a3a9902d61950cc26be60d266d4", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "C" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/quartz-signal", - "repo_full_name": "demo-org/quartz-signal", - "display_name": "Quartz Signal", - "path": "lab/quartz-signal", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/tabard-anvil", + "display_name": "Tabard Anvil", + "path": "lab/tabard-anvil", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/tabard-anvil", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Python" + "Zig" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "experiment", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, - "has_ci": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3092, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 3503, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2812,93 +6281,278 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/tabard-anvil", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/tabard-anvil", + "head": "810f41c9b80370b07f6f369cf2d57c632042cfb404b9bc322a7742d0a28bad66", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Zig" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/rialto-pennant", - "repo_full_name": "demo-org/rialto-pennant", - "display_name": "Rialto Pennant", - "path": "studio/rialto-pennant", - "section_marker": "studio/", + "project_key": "lab/vellum-compass", + "display_name": "Vellum Compass", + "path": "lab/vellum-compass", + "top_level_dir": "lab", + "group_key": "lab", + "group_label": "Experiments Lab", + "section_marker": "lab/", + "section_label": "Experiments Lab", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/vellum-compass", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, "stack": [ - "TypeScript" + "Haskell" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md" ], "context_file_count": 2, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": true, - "has_license": true, - "readme_char_count": 3229, - "release_count": 0, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": false, + "has_ci": false, + "has_license": true, + "readme_char_count": 3777, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", - "risk_factors": [ - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_tier": "deferred", + "risk_factors": [], + "risk_summary": "Stale project not on maintain path.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "stale", - "cohort_member": true, - "cohort_policy": "portfolio-default-attention-v1", - "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", - "receipt_state": "stale", - "source_produced_at": "2026-08-01T22:50:13.825998+00:00", + "coverage_state": "unknown", + "cohort_member": false, + "cohort_policy": "", + "receipt_schema_version": "", + "receipt_state": "unknown", + "source_produced_at": "", "providers": {}, "dependabot_critical": null, "dependabot_high": null, @@ -2913,84 +6567,272 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", + "legacy_status": "active", "legacy_context_quality": "standard", - "legacy_category": "studio", + "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/vellum-compass", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/vellum-compass", + "head": "bcb52534ec707361ab9aa2ac06fc7c683f36ce7278036da6a4ae63995862cbe8", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Haskell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "deferred" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/solstice-cairn", - "repo_full_name": "demo-org/solstice-cairn", - "display_name": "Solstice Cairn", - "path": "lab/solstice-cairn", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/xenon-parapet", + "display_name": "Xenon Parapet", + "path": "lab/xenon-parapet", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/xenon-parapet", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "C" + "Shell" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": false, "has_license": true, - "readme_char_count": 3366, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 4051, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": false }, "security": { "alerts_available": false, @@ -3010,88 +6852,273 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "minimum-viable", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "lab", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/xenon-parapet", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/xenon-parapet", + "head": "d41a80f04e11746d8954d38993b1eb6bb11d93d755d8897e8193f7334bea2a1c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Shell" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/tabard-anvil", - "repo_full_name": "demo-org/tabard-anvil", - "display_name": "Tabard Anvil", - "path": "lab/tabard-anvil", - "section_marker": "lab/", - "has_git": true, + "project_key": "lab/zephyr-bastion", + "display_name": "Zephyr Bastion", + "path": "lab/zephyr-bastion", "top_level_dir": "lab", "group_key": "lab", "group_label": "Experiments Lab", + "section_marker": "lab/", "section_label": "Experiments Lab", + "has_git": true, + "repo_full_name": "demo-org/zephyr-bastion", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Exploratory prototype kept for reference only.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "learning", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Zig" + "Perl" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": true, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, "has_ci": false, "has_license": true, - "readme_char_count": 3503, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 4325, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -3115,902 +7142,2081 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", + "legacy_status": "manual-only", + "legacy_context_quality": "standard", "legacy_category": "lab", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/lab/zephyr-bastion", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/lab/zephyr-bastion", + "head": "6ce88af17eef7c334102ca9a51db1a3c16498068ede5418ba7522a8950a7abfb", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "learning" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Exploratory prototype kept for reference only." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Perl" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/umbra-trellis", - "repo_full_name": "demo-org/umbra-trellis", - "display_name": "Umbra Trellis", - "path": "studio/umbra-trellis", - "section_marker": "studio/", + "project_key": "platform/dovetail-forge", + "display_name": "Dovetail Forge", + "path": "platform/dovetail-forge", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/dovetail-forge", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Lua" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": true, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, + "current_state_present": false, + "stack_present": false, + "run_instructions_present": false, + "known_risks_present": false, + "next_recommended_move_present": false, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "active-infra", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3640, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1311, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", "doctor_gap": false, - "context_risk": false, - "path_risk": false + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 2, + "low": 4 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 2, + "dependabot_low": 4, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/dovetail-forge", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/dovetail-forge", + "head": "e5ce82b2aef5e7bcce252f7d044b0c1f5d9c4b70b4e18e334e97f66015d57a51", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "active-infra" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/vellum-compass", - "repo_full_name": "demo-org/vellum-compass", - "display_name": "Vellum Compass", - "path": "lab/vellum-compass", - "section_marker": "lab/", + "project_key": "platform/ember-conduit", + "display_name": "Ember Conduit", + "path": "platform/ember-conduit", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/ember-conduit", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "Haskell" + "Rust" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 3777, - "release_count": 0, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1448, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "medium": 0, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 1, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 1 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", + "legacy_context_quality": "full", + "legacy_category": "platform", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ember-conduit", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ember-conduit", + "head": "7d6de2172b1a99f291f42d5446b59a127ca77cceeffde0606ba5a10c3a7fc6ec", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Rust" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "studio/wicker-obelisk", - "repo_full_name": "demo-org/wicker-obelisk", - "display_name": "Wicker Obelisk", - "path": "studio/wicker-obelisk", - "section_marker": "studio/", + "project_key": "platform/fathom-beacon", + "display_name": "Fathom Beacon", + "path": "platform/fathom-beacon", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/fathom-beacon", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": true + "automation_eligible": false }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "PHP" + "TypeScript", + "Node" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", + "context_file_count": 2, + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "active-infra", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 3914, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1585, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No elevated risk factors.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 0, + "low": 0 + }, + "zero_findings": true + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 0, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/xenon-parapet", - "repo_full_name": "demo-org/xenon-parapet", - "display_name": "Xenon Parapet", - "path": "lab/xenon-parapet", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, - "stack": [ - "Shell" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4051, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no CI workflow", - "thin project context", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/fathom-beacon", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/fathom-beacon", + "head": "9144f55af9d0578de78750f15f3159d9307d511bff03c84d7a26a96ac8f875e3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "active-infra" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, Node" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/yarrow-spindle", - "repo_full_name": "demo-org/yarrow-spindle", - "display_name": "Yarrow Spindle", - "path": "studio/yarrow-spindle", - "section_marker": "studio/", + "project_key": "platform/ivory-sextant", + "display_name": "Ivory Sextant", + "path": "platform/ivory-sextant", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/ivory-sextant", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "full", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ - "Java" + "Python" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", + "AGENTS.md", "docs/current-state.md", "docs/architecture.md" ], "context_file_count": 3, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4188, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 1996, + "release_count": 0 }, "risk": { "risk_tier": "moderate", "risk_factors": [ - "no automated tests", - "no meaningful activity in the recent window", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 1, + "dependabot_medium": 1, + "dependabot_low": 0, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, + "open_high_critical": 1 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", + "legacy_status": "manual-only", "legacy_context_quality": "full", - "legacy_category": "studio", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/zephyr-bastion", - "repo_full_name": "demo-org/zephyr-bastion", - "display_name": "Zephyr Bastion", - "path": "lab/zephyr-bastion", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "maintain", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "manual-only", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": false - }, - "derived": { - "context_quality": "standard", - "attention_state": "manual-only", - "activity_status": "stale", - "archived": false, - "stack": [ - "Perl" - ], - "stack_present": true, - "context_files": [ - "README.md", - "docs/current-state.md" - ], - "context_file_count": 2, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": true, - "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": true, - "readme_char_count": 4325, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/ivory-sextant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/ivory-sextant", + "head": "fceecb2f58cfb099cb8993bf43d8f5f202aaaf627a969443e5f0d0bc79ade496", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Python" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "standard", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/amber-thicket", - "repo_full_name": "demo-org/amber-thicket", - "display_name": "Amber Thicket", - "path": "studio/amber-thicket", - "section_marker": "studio/", + "project_key": "platform/lumen-ferry", + "display_name": "Lumen Ferry", + "path": "platform/lumen-ferry", + "top_level_dir": "platform", + "group_key": "platform", + "group_label": "Platform and Infrastructure", + "section_marker": "platform/", + "section_label": "Platform and Infrastructure", "has_git": true, - "top_level_dir": "studio", - "group_key": "studio", - "group_label": "Studio Projects", - "section_label": "Studio Projects", + "repo_full_name": "demo-org/lumen-ferry", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Shared platform service other demo projects depend on.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "infrastructure", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "recent", - "archived": false, "stack": [ - "Dart", - "Flutter" + "Go" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", "has_tests": true, "has_ci": true, "has_license": true, - "readme_char_count": 4462, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "readme_char_count": 2407, + "release_count": 0 }, "risk": { - "risk_tier": "baseline", + "risk_tier": "elevated", "risk_factors": [ - "thin project context", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions", + "active-high-severity-alerts" ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, + "risk_summary": "4 risk factor(s): weak context quality, investigate override active, run instructions missing, open high/critical security alerts.", "doctor_gap": false, "context_risk": true, - "path_risk": false + "path_risk": true, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 1, + "medium": 0, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 1, + "dependabot_high": 1, + "dependabot_medium": 0, + "dependabot_low": 2, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 2 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "dormant", - "legacy_context_quality": "minimum-viable", - "legacy_category": "studio", + "legacy_status": "manual-only", + "legacy_context_quality": "boilerplate", + "legacy_category": "platform", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "lab/bramble-cistern", - "repo_full_name": "demo-org/bramble-cistern", - "display_name": "Bramble Cistern", - "path": "lab/bramble-cistern", - "section_marker": "lab/", - "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", - "default_branch": "main" - }, - "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", - "owner": "demo-operator", - "team": "", - "criticality": "medium", - "review_cadence": "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": true - }, - "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, - "stack": [ - "R" - ], - "stack_present": true, - "context_files": [ - "README.md" - ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 4599, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." }, - "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": false, - "context_risk": true, - "path_risk": false + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/platform/lumen-ferry", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/platform/lumen-ferry", + "head": "4cfc26b6cb6c7333e739a3cc92b62e0bdf05ebfc3217b71ecd683bdb6ef16856", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] }, - "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "infrastructure" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Shared platform service other demo projects depend on." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Go" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", - "legacy_tool_provenance": "" - } + "warnings": [] }, { "identity": { - "project_key": "studio/cobalt-wharf", - "repo_full_name": "demo-org/cobalt-wharf", - "display_name": "Cobalt Wharf", - "path": "studio/cobalt-wharf", - "section_marker": "studio/", - "has_git": true, + "project_key": "studio/amber-thicket", + "display_name": "Amber Thicket", + "path": "studio/amber-thicket", "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/amber-thicket", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "manual-only", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "full", - "attention_state": "manual-only", - "activity_status": "recent", - "archived": false, "stack": [ - "Scala" + "Dart", + "Flutter" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md", - "docs/current-state.md", - "docs/architecture.md" + "AGENTS.md" ], - "context_file_count": 3, - "primary_context_file": "README.md", + "context_file_count": 1, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": true, - "readme_char_count": 4736, - "release_count": 0, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 4462, + "release_count": 0 }, "risk": { "risk_tier": "baseline", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "No elevated pressure; routine cadence is sufficient.", - "security_risk": false, - "doctor_gap": true, + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4034,86 +9240,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "manual-only", - "legacy_context_quality": "full", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/amber-thicket", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/amber-thicket", + "head": "158951110177edfc830cac9d9408da0cd4cc2648c1ddd64c2c01de93246c33cd", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Dart, Flutter" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/dusk-pergola", - "repo_full_name": "demo-org/dusk-pergola", - "display_name": "Dusk Pergola", - "path": "lab/dusk-pergola", - "section_marker": "lab/", + "project_key": "studio/cobalt-wharf", + "display_name": "Cobalt Wharf", + "path": "studio/cobalt-wharf", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/cobalt-wharf", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "standard", - "attention_state": "experiment", - "activity_status": "stale", - "archived": false, "stack": [ - "OCaml" + "Scala" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md", - "docs/current-state.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 2, - "primary_context_file": "README.md", + "context_file_count": 3, + "primary_context_file": "AGENTS.md", "project_summary_present": true, "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, + "known_risks_present": true, "next_recommended_move_present": true, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "manual-only", + "path_override": "", + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, "has_ci": false, "has_license": true, - "readme_char_count": 4873, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "readme_char_count": 4736, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4137,84 +9527,268 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "active", - "legacy_context_quality": "standard", - "legacy_category": "lab", + "legacy_status": "manual-only", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/cobalt-wharf", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/cobalt-wharf", + "head": "96d808457f65942c1e59aa8bf76d2b22a496b0547a337fba3f1dd213db4a15b6", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Scala" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { "project_key": "studio/errant-fathom", - "repo_full_name": "demo-org/errant-fathom", "display_name": "Errant Fathom", "path": "studio/errant-fathom", - "section_marker": "studio/", - "has_git": true, "top_level_dir": "studio", "group_key": "studio", "group_label": "Studio Projects", + "section_marker": "studio/", "section_label": "Studio Projects", + "has_git": true, + "repo_full_name": "demo-org/errant-fathom", "default_branch": "main" }, "declared": { - "operating_path": "maintain", - "category": "studio", - "tool_provenance": "claude-code", - "lifecycle_state": "dormant", - "purpose": "Product experiment maintained on a manual cadence.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "minimum-viable", - "attention_state": "parked", - "activity_status": "stale", - "archived": false, "stack": [ "TypeScript" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", + "path_override": "", + "path_confidence": "medium", + "path_rationale": "Stable path is Maintain from explicit operating path.", "has_tests": true, "has_ci": true, "has_license": true, "readme_char_count": 5010, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is maintain from explicit operating path." + "release_count": 0 }, "risk": { - "risk_tier": "moderate", - "risk_factors": [ - "thin project context", - "no meaningful activity in the recent window", - "security coverage unobserved" - ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4242,496 +9816,1783 @@ "legacy_context_quality": "minimum-viable", "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/errant-fathom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/errant-fathom", + "head": "aff68be828532af2d227ad40dc7c05c87ff033b41c960e38bd0f700058479339", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "lab/foxglove-mast", - "repo_full_name": "demo-org/foxglove-mast", - "display_name": "Foxglove Mast", - "path": "lab/foxglove-mast", - "section_marker": "lab/", + "project_key": "studio/glacier-quill", + "display_name": "Glacier Quill", + "path": "studio/glacier-quill", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "lab", - "group_key": "lab", - "group_label": "Experiments Lab", - "section_label": "Experiments Lab", + "repo_full_name": "demo-org/glacier-quill", "default_branch": "main" }, "declared": { - "operating_path": "experiment", - "category": "lab", - "tool_provenance": "codex", - "lifecycle_state": "active", - "purpose": "Exploratory prototype kept for reference only.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": true }, "derived": { - "context_quality": "boilerplate", - "attention_state": "experiment", - "activity_status": "recent", - "archived": false, "stack": [ - "Nim" + "Swift", + "SwiftUI" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", + "primary_context_file": "AGENTS.md", "project_summary_present": true, - "current_state_present": false, - "run_instructions_present": false, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-07-11T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": true, - "readme_char_count": 5147, - "release_count": 0, + "current_state_present": true, + "stack_present": true, + "run_instructions_present": true, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is experiment from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1722, + "release_count": 0 }, "risk": { - "risk_tier": "moderate", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "thin project context", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Context or coverage gaps are worth closing this cycle.", - "security_risk": false, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", "doctor_gap": false, - "context_risk": true, - "path_risk": false + "context_risk": false, + "path_risk": false, + "security_risk": true }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, - "open_high_critical": 0 + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 1, + "high": 2, + "medium": 3, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 1, + "note": 0, + "warning": 0 + }, + "zero_findings": false + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 1, + "dependabot_high": 2, + "dependabot_medium": 3, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 1, + "secret_scanning_open": 0, + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", "legacy_status": "active", - "legacy_context_quality": "boilerplate", - "legacy_category": "lab", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "archive/gossamer-ridge", - "repo_full_name": "demo-org/gossamer-ridge", - "display_name": "Gossamer Ridge", - "path": "archive/gossamer-ridge", - "section_marker": "archive/", + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/glacier-quill", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/glacier-quill", + "head": "ff82186195d84e2a61120341abd83b50d18695c3f03b6db8f0a4bca885f1b7c2", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Swift, SwiftUI" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "studio/harbor-lantern", + "display_name": "Harbor Lantern", + "path": "studio/harbor-lantern", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/harbor-lantern", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "commercial", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Python" + "TypeScript", + "React" ], - "stack_present": true, + "context_quality": "boilerplate", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, "current_state_present": false, - "run_instructions_present": true, + "stack_present": false, + "run_instructions_present": false, "known_risks_present": false, "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5284, - "release_count": 0, - "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "active-product", + "path_override": "investigate", + "path_confidence": "low", + "path_rationale": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 1859, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "elevated", "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" + "weak-context-active", + "investigate-override", + "no-run-instructions" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, - "context_risk": false, - "path_risk": false + "risk_summary": "3 risk factor(s): weak context quality, investigate override active, run instructions missing.", + "doctor_gap": false, + "context_risk": true, + "path_risk": true, + "security_risk": false }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 1, + "low": 2 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 1, + "dependabot_low": 2, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "boilerplate", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/harbor-lantern", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/harbor-lantern", + "head": "85eb7bda87cc4133d3934c192471717b579ee9c7828153ae1f880938f8747cb3", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "commercial" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "active-product" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "boilerplate" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "low" + }, + "derived.path_override": { + "source": "normalized", + "detail": "investigate" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path. Context quality is still too weak for path guidance to stand on its own. Treat this repo as investigate until path confidence improves." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript, React" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "false" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "elevated" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/hollow-tessera", - "repo_full_name": "demo-org/hollow-tessera", - "display_name": "Hollow Tessera", - "path": "archive/hollow-tessera", - "section_marker": "archive/", + "project_key": "studio/juniper-kiln", + "display_name": "Juniper Kiln", + "path": "studio/juniper-kiln", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/juniper-kiln", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "experiment", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "JavaScript" + "Kotlin" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5421, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-08-01T22:09:43.833784+00:00", + "activity_status": "active", + "archived": false, + "attention_state": "experiment", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Experiment from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2133, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No elevated risk factors.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { - "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, - "code_scanning_critical": null, - "code_scanning_high": null, - "secret_scanning_open": null, + "alerts_available": true, + "coverage_state": "complete", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 0, + "low": 1 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "note": 0, + "warning": 0 + }, + "zero_findings": true + }, + "secret_scanning": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "open": 0 + }, + "zero_findings": true + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 0, + "dependabot_low": 1, + "code_scanning_critical": 0, + "code_scanning_high": 0, + "secret_scanning_open": 0, "open_high_critical": 0 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/juniper-kiln", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/juniper-kiln", + "head": "5a26267fed059db4575fa389c1cf7712acc9c5979f16ccdc7affbebcffdeb54c", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "active" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "experiment" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-08-01T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Experiment from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Kotlin" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/indigo-palisade", - "repo_full_name": "demo-org/indigo-palisade", - "display_name": "Indigo Palisade", - "path": "archive/indigo-palisade", - "section_marker": "archive/", + "project_key": "studio/kestrel-loom", + "display_name": "Kestrel Loom", + "path": "studio/kestrel-loom", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/kestrel-loom", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "active", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "finish", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Go" + "Ruby" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5558, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-07-13T22:09:43.833784+00:00", + "activity_status": "recent", + "archived": false, + "attention_state": "decision-needed", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Finish from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2270, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", + "risk_tier": "moderate", "risk_factors": [ - "no CI workflow", - "security coverage unobserved" + "active-high-severity-alerts" ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_summary": "1 risk factor(s): open high/critical security alerts.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": true }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 3, + "medium": 1, + "low": 0 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 3, + "dependabot_medium": 1, + "dependabot_low": 0, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, - "open_high_critical": 0 + "open_high_critical": 3 }, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "active", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/kestrel-loom", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/kestrel-loom", + "head": "def1e22cfe8a27746f826754683cb03ed9a56dffacdf8552654a5d7dc026aa4b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "active" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "recent" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "decision-needed" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-07-13T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Finish from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Ruby" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "moderate" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/jetty-marquee", - "repo_full_name": "demo-org/jetty-marquee", - "display_name": "Jetty Marquee", - "path": "archive/jetty-marquee", - "section_marker": "archive/", + "project_key": "studio/nimbus-charter", + "display_name": "Nimbus Charter", + "path": "studio/nimbus-charter", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/nimbus-charter", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Ruby" + "JavaScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 5695, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 2681, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is partial.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, - "dependabot_critical": null, - "dependabot_high": null, - "dependabot_medium": null, - "dependabot_low": null, + "coverage_state": "partial", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "fresh", + "source_produced_at": "2026-08-03T22:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "observed", + "completed": true, + "reason": null, + "reason_code": "observed", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": true, + "counts": { + "critical": 0, + "high": 0, + "medium": 2, + "low": 3 + }, + "zero_findings": false + }, + "code_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "not_found", + "completed": false, + "reason": "github_not_found", + "reason_code": "endpoint_unsupported", + "http_status": 404, + "http_classification": "github_not_found", + "conditional": { + "requested": false, + "result": "failed" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "pagination_complete": false, + "counts": null, + "zero_findings": null + } + }, + "dependabot_critical": 0, + "dependabot_high": 0, + "dependabot_medium": 2, + "dependabot_low": 3, "code_scanning_critical": null, "code_scanning_high": null, "secret_scanning_open": null, @@ -4741,94 +11602,342 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } - }, - { - "identity": { - "project_key": "archive/kindling-arbor", - "repo_full_name": "demo-org/kindling-arbor", - "display_name": "Kindling Arbor", - "path": "archive/kindling-arbor", - "section_marker": "archive/", + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "observed", + "reason_code": "observed", + "reason": null, + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "default_branch": "main", + "head_sha": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "archived": false + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/nimbus-charter", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": null, + "candidate_count": 1, + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main" + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/nimbus-charter", + "head": "188af92bf3e2774a55bdfb97d15c601b1130142a1efcc145c37237df33afc20b", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "JavaScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] + }, + { + "identity": { + "project_key": "studio/rialto-pennant", + "display_name": "Rialto Pennant", + "path": "studio/rialto-pennant", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/rialto-pennant", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "manual-only", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "codex", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "C++" + "TypeScript" ], - "stack_present": true, + "context_quality": "standard", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 2, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 5832, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "manual-only", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3229, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is stale.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, - "coverage_state": "unknown", - "cohort_member": false, - "cohort_policy": "", - "receipt_schema_version": "", - "receipt_state": "unknown", - "source_produced_at": "", - "providers": {}, + "coverage_state": "stale", + "cohort_member": true, + "cohort_policy": "portfolio-default-attention-v1", + "receipt_schema_version": "GitHubSecurityCoverageReceiptV1", + "receipt_state": "stale", + "source_produced_at": "2026-08-02T21:09:43.833784+00:00", + "providers": { + "dependabot": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "code_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + }, + "secret_scanning": { + "state": "stale", + "completed": false, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": { + "requested": true, + "result": "modified" + }, + "etag": null, + "last_modified": null, + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "pagination_complete": true, + "counts": null, + "zero_findings": null + } + }, "dependabot_critical": null, "dependabot_high": null, "dependabot_medium": null, @@ -4842,83 +11951,275 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "manual-only", + "legacy_context_quality": "standard", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "source": "github-graphql-default-branch-head-v1", + "state": "stale", + "reason_code": "stale_observation", + "reason": "receipt_stale", + "observed_at": "2026-08-02T21:09:43.833784+00:00", + "default_branch": null, + "head_sha": null, + "archived": null + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/rialto-pennant", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "github-graphql-default-branch-head-v1", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=stale)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/rialto-pennant", + "head": "44a43057b9f899b01b1549ac4784c57c6ee9ba43424481bd97662a0635a7b651", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "codex" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "manual-only" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "2" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "standard" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "TypeScript" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/lattice-bezel", - "repo_full_name": "demo-org/lattice-bezel", - "display_name": "Lattice Bezel", - "path": "archive/lattice-bezel", - "section_marker": "archive/", + "project_key": "studio/umbra-trellis", + "display_name": "Umbra Trellis", + "path": "studio/umbra-trellis", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/umbra-trellis", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Swift" + "Lua" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": true, - "has_ci": false, - "has_license": false, - "readme_char_count": 5969, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 3640, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -4938,87 +12239,272 @@ "secret_scanning_open": null, "open_high_critical": 0 }, - "advisory": { - "notion_portfolio_call": "", - "notion_momentum": "", - "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", - "legacy_tool_provenance": "" - } + "advisory": { + "notion_portfolio_call": "", + "notion_momentum": "", + "notion_current_state": "", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", + "legacy_tool_provenance": "" + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/umbra-trellis", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/umbra-trellis", + "head": "da48454b7c95b5f168f6696f170b02f445ada6b828e138b1ae9c3aded27a592e", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Lua" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/mica-turnstile", - "repo_full_name": "demo-org/mica-turnstile", - "display_name": "Mica Turnstile", - "path": "archive/mica-turnstile", - "section_marker": "archive/", + "project_key": "studio/wicker-obelisk", + "display_name": "Wicker Obelisk", + "path": "studio/wicker-obelisk", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/wicker-obelisk", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "claude-code", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", - "automation_eligible": false + "automation_eligible": true }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "Rust" + "PHP" ], - "stack_present": true, + "context_quality": "minimum-viable", "context_files": [ - "README.md" + "AGENTS.md" ], "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": true, - "has_license": false, - "readme_char_count": 6106, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": true, + "has_ci": true, + "has_license": true, + "readme_char_count": 3914, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5042,84 +12528,270 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "minimum-viable", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/wicker-obelisk", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/wicker-obelisk", + "head": "b82ff66969a92f7a5bc3f63f744a2e5dc5caa0b2d6fa4cbe05ee7ff13a7eb0ab", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "1" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "minimum-viable" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "medium" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "PHP" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] }, { "identity": { - "project_key": "archive/nocturne-spar", - "repo_full_name": "demo-org/nocturne-spar", - "display_name": "Nocturne Spar", - "path": "archive/nocturne-spar", - "section_marker": "archive/", + "project_key": "studio/yarrow-spindle", + "display_name": "Yarrow Spindle", + "path": "studio/yarrow-spindle", + "top_level_dir": "studio", + "group_key": "studio", + "group_label": "Studio Projects", + "section_marker": "studio/", + "section_label": "Studio Projects", "has_git": true, - "top_level_dir": "archive", - "group_key": "archive", - "group_label": "Archived", - "section_label": "Archived", + "repo_full_name": "demo-org/yarrow-spindle", "default_branch": "main" }, "declared": { - "operating_path": "archive", - "category": "archive", - "tool_provenance": "codex", - "lifecycle_state": "archived", - "purpose": "Archived project retained for historical continuity.", "owner": "demo-operator", "team": "", + "purpose": "Product experiment maintained on a manual cadence.", + "lifecycle_state": "dormant", "criticality": "medium", "review_cadence": "monthly", "intended_disposition": "", "maturity_program": "maintain", "target_maturity": "operating", + "operating_path": "maintain", + "category": "fun", + "tool_provenance": "claude-code", "notes": "", "doctor_standard": "", "automation_eligible": false }, "derived": { - "context_quality": "none", - "attention_state": "archived", - "activity_status": "stale", - "archived": true, "stack": [ - "TypeScript" + "Java" ], - "stack_present": true, + "context_quality": "full", "context_files": [ - "README.md" + "AGENTS.md", + "docs/current-state.md", + "docs/architecture.md" ], - "context_file_count": 1, - "primary_context_file": "README.md", - "project_summary_present": false, - "current_state_present": false, + "context_file_count": 3, + "primary_context_file": "AGENTS.md", + "project_summary_present": true, + "current_state_present": true, + "stack_present": true, "run_instructions_present": true, - "known_risks_present": false, - "next_recommended_move_present": false, - "last_meaningful_activity_at": "2026-01-23T22:50:13.825998+00:00", - "has_tests": false, - "has_ci": false, - "has_license": false, - "readme_char_count": 6243, - "release_count": 0, + "known_risks_present": true, + "next_recommended_move_present": true, + "last_meaningful_activity_at": "2026-01-25T22:09:43.833784+00:00", + "activity_status": "stale", + "archived": false, + "attention_state": "parked", "path_override": "", - "path_confidence": "medium", - "path_rationale": "Stable path is archive from explicit operating path." + "path_confidence": "high", + "path_rationale": "Stable path is Maintain from explicit operating path.", + "has_tests": false, + "has_ci": true, + "has_license": true, + "readme_char_count": 4188, + "release_count": 0 }, "risk": { - "risk_tier": "deferred", - "risk_factors": [ - "no automated tests", - "no CI workflow", - "security coverage unobserved" - ], - "risk_summary": "Archived project; risk is accepted and not tracked.", - "security_risk": false, - "doctor_gap": true, + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": "No non-security risk factors detected; GitHub security coverage is unknown.", + "doctor_gap": false, "context_risk": false, - "path_risk": false + "path_risk": false, + "security_risk": false }, "security": { "alerts_available": false, @@ -5143,34 +12815,238 @@ "notion_portfolio_call": "", "notion_momentum": "", "notion_current_state": "", - "legacy_status": "archived", - "legacy_context_quality": "none", - "legacy_category": "archive", + "legacy_status": "dormant", + "legacy_context_quality": "full", + "legacy_category": "studio", "legacy_tool_provenance": "" - } + }, + "repository_state": { + "state": "observed", + "observed_at": "2026-08-03T22:09:43.833784+00:00", + "local": { + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0 + }, + "remote_default_branch": { + "state": "unknown", + "reason_code": "not_requested", + "reason": "no independent live remote read was performed by portfolio generation" + }, + "topology": { + "kind": "working_repository", + "configured_path": "/demo-workspace/studio/yarrow-spindle", + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": { + "source": "remote_default_branch", + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": "independent remote-default evidence is not observed (state=unknown)", + "candidate_count": 0 + } + }, + "worktrees": [ + { + "state": "observed", + "path": "/demo-workspace/studio/yarrow-spindle", + "head": "f618c22516c338789613aa8b2c965c88debc501e1932019921254bd1efc8b012", + "branch": "main", + "dirty": false, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": false, + "bare": false + } + ] + }, + "provenance": { + "declared.category": { + "source": "demo-fixture", + "detail": "fun" + }, + "declared.criticality": { + "source": "demo-fixture", + "detail": "medium" + }, + "declared.doctor_standard": { + "source": "demo-fixture", + "detail": "" + }, + "declared.intended_disposition": { + "source": "demo-fixture", + "detail": "" + }, + "declared.lifecycle_state": { + "source": "demo-fixture", + "detail": "dormant" + }, + "declared.maturity_program": { + "source": "demo-fixture", + "detail": "maintain" + }, + "declared.notes": { + "source": "demo-fixture", + "detail": "" + }, + "declared.operating_path": { + "source": "normalized", + "detail": "explicit-operating-path" + }, + "declared.owner": { + "source": "demo-fixture", + "detail": "demo-operator" + }, + "declared.purpose": { + "source": "demo-fixture", + "detail": "Product experiment maintained on a manual cadence." + }, + "declared.review_cadence": { + "source": "demo-fixture", + "detail": "monthly" + }, + "declared.target_maturity": { + "source": "demo-fixture", + "detail": "operating" + }, + "declared.team": { + "source": "demo-fixture", + "detail": "" + }, + "declared.tool_provenance": { + "source": "demo-fixture", + "detail": "claude-code" + }, + "derived.activity_status": { + "source": "demo-fixture", + "detail": "stale" + }, + "derived.archived": { + "source": "demo-fixture", + "detail": "false" + }, + "derived.attention_state": { + "source": "demo-fixture", + "detail": "parked" + }, + "derived.context_files": { + "source": "demo-fixture", + "detail": "3" + }, + "derived.context_quality": { + "source": "demo-fixture", + "detail": "full" + }, + "derived.current_state_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.known_risks_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.last_meaningful_activity_at": { + "source": "demo-fixture", + "detail": "2026-01-25T22:09:43.833784+00:00" + }, + "derived.next_recommended_move_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.path_confidence": { + "source": "normalized", + "detail": "high" + }, + "derived.path_override": { + "source": "normalized", + "detail": "" + }, + "derived.path_rationale": { + "source": "normalized", + "detail": "Stable path is Maintain from explicit operating path." + }, + "derived.primary_context_file": { + "source": "demo-fixture", + "detail": "AGENTS.md" + }, + "derived.project_summary_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.run_instructions_present": { + "source": "demo-fixture", + "detail": "true" + }, + "derived.stack": { + "source": "demo-fixture", + "detail": "Java" + }, + "derived.stack_present": { + "source": "demo-fixture", + "detail": "true" + }, + "risk.doctor_gap": { + "source": "derived", + "detail": "false" + }, + "risk.risk_tier": { + "source": "derived", + "detail": "baseline" + } + }, + "warnings": [] } ], "rollups": { "risk_tier_counts": { "elevated": 10, - "moderate": 12, - "baseline": 10, - "deferred": 8 + "moderate": 6, + "baseline": 13, + "deferred": 11 }, "security": { - "coverage_state": "partial", + "scanned_count": 10, + "unavailable_count": 30, "complete_repo_count": 10, "partial_repo_count": 6, "stale_count": 2, "unknown_count": 22, - "scanned_count": 10, + "cohort_repository_count": 18, + "cohort_complete_count": 10, + "cohort_partial_count": 6, + "cohort_stale_count": 2, + "cohort_unknown_count": 0, + "dependabot_observed_count": 16, + "code_scanning_observed_count": 10, + "secret_scanning_observed_count": 10, + "dependabot_zero_finding_count": 1, + "code_scanning_zero_finding_count": 6, + "secret_scanning_zero_finding_count": 9, + "remote_default_branch_observed_count": 16, + "remote_default_branch_partial_count": 0, + "remote_default_branch_stale_count": 2, + "remote_default_branch_unavailable_count": 22, + "coverage_state": "partial", "repos_with_open_high_critical": 10, "total_open_high": 20, "total_open_critical": 5 }, "decision": { - "decision_needed_count": 3, - "default_attention_count": 10 + "decision_needed_count": 9, + "default_attention_count": 12 } } } \ No newline at end of file diff --git a/scripts/generate_portfolio_truth_contract_fixture.py b/scripts/generate_portfolio_truth_contract_fixture.py new file mode 100644 index 00000000..2ecd77b7 --- /dev/null +++ b/scripts/generate_portfolio_truth_contract_fixture.py @@ -0,0 +1,80 @@ +#!/usr/bin/env python3 +"""Write or verify the portable PortfolioTruth consumer contract artifacts.""" + +from __future__ import annotations + +import argparse +import sys +from pathlib import Path + +REPO_ROOT = Path(__file__).resolve().parents[1] +if str(REPO_ROOT) not in sys.path: + sys.path.insert(0, str(REPO_ROOT)) + +from src.portfolio_truth_contract_fixture import ( # noqa: E402 + FIXTURE_RELATIVE_PATH, + MANIFEST_RELATIVE_PATH, + build_contract_fixture, + fixture_bytes, + manifest_bytes, +) +from src.portfolio_truth_validate import validate_truth_snapshot_payload # noqa: E402 + + +def _expected_artifacts() -> tuple[tuple[Path, bytes], ...]: + return ( + (REPO_ROOT / FIXTURE_RELATIVE_PATH, fixture_bytes()), + (REPO_ROOT / MANIFEST_RELATIVE_PATH, manifest_bytes()), + ) + + +def _check() -> int: + try: + validate_truth_snapshot_payload(build_contract_fixture()) + except ValueError as exc: + print( + f"Portable PortfolioTruth consumer contract is invalid: {exc}", + file=sys.stderr, + ) + return 1 + drifted: list[Path] = [] + for path, expected in _expected_artifacts(): + if not path.is_file() or path.read_bytes() != expected: + drifted.append(path.relative_to(REPO_ROOT)) + if drifted: + print( + "PortfolioTruth consumer contract drifted: " + + ", ".join(str(path) for path in drifted), + file=sys.stderr, + ) + print( + "Regenerate with: python " + "scripts/generate_portfolio_truth_contract_fixture.py", + file=sys.stderr, + ) + return 1 + print("Portable PortfolioTruth consumer contract is current.") + return 0 + + +def _write() -> int: + for path, content in _expected_artifacts(): + path.parent.mkdir(parents=True, exist_ok=True) + path.write_bytes(content) + print(f"Wrote {path.relative_to(REPO_ROOT)}") + return 0 + + +def main() -> int: + parser = argparse.ArgumentParser() + parser.add_argument( + "--check", + action="store_true", + help="Fail when committed artifacts differ from deterministic output.", + ) + args = parser.parse_args() + return _check() if args.check else _write() + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/src/app/portfolio_truth.py b/src/app/portfolio_truth.py index 2c46298b..ba717c91 100644 --- a/src/app/portfolio_truth.py +++ b/src/app/portfolio_truth.py @@ -1,6 +1,7 @@ from __future__ import annotations import os +from datetime import datetime, timezone from pathlib import Path from typing import Any @@ -27,6 +28,7 @@ def run_portfolio_truth_mode(args: Any) -> None: + evaluation_at: datetime | None = None output_dir = Path(args.output_dir) workspace_root = Path(args.workspace_root) registry_output = ( @@ -63,6 +65,7 @@ def run_portfolio_truth_mode(args: Any) -> None: security_coverage_metadata: dict[str, object] | None = None security_receipt_binding: SecurityCoverageReceiptBinding | None = None if getattr(args, "portfolio_truth_include_security", False): + evaluation_at = datetime.now(timezone.utc) receipt_path_value = getattr(args, "portfolio_truth_security_receipt", None) loaded_security = load_security_coverage_by_full_name( output_dir=output_dir, @@ -78,6 +81,7 @@ def run_portfolio_truth_mode(args: Any) -> None: expected_producer_commit=( producer_evidence.commit if producer_evidence is not None else None ), + now=evaluation_at, ) if loaded_security is not None: try: @@ -143,6 +147,7 @@ def run_portfolio_truth_mode(args: Any) -> None: producer_evidence=producer_evidence, producer_repo_root=producer_repo_root, require_producer_evidence=require_producer_evidence, + now=evaluation_at, ) except (PortfolioTruthPublishError, ValueError) as exc: raise SystemExit(str(exc)) from exc diff --git a/src/demo_portfolio.py b/src/demo_portfolio.py index 9cd5fc13..f3898679 100644 --- a/src/demo_portfolio.py +++ b/src/demo_portfolio.py @@ -13,23 +13,40 @@ from __future__ import annotations -from collections import Counter +import hashlib from dataclasses import dataclass from datetime import datetime, timedelta, timezone from typing import Any -from src.github_security_coverage import GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION +from src.github_security_coverage import ( + GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION, + _remote_repository_result, +) +from src.portfolio_repository_state import _observed_result +from src.portfolio_pathing import build_operating_path_entry +from src.portfolio_truth_coverage import build_coverage_envelope +from src.portfolio_truth_decisions import build_project_decision +from src.portfolio_truth_metadata import ( + build_exclusions, + build_input_envelope, + build_source_summary, + build_warnings, +) +from src.portfolio_truth_precedence import build_precedence_matrix +from src.portfolio_truth_provenance import REQUIRED_PROJECT_PROVENANCE_KEYS from src.portfolio_truth_types import DERIVATION_POLICY_VERSION, SCHEMA_VERSION # The demo workspace is deliberately not a real filesystem path. DEMO_WORKSPACE_ROOT = "/demo-workspace" DEMO_ORG = "demo-org" COHORT_POLICY = "portfolio-default-attention-v1" +DEMO_SECURITY_PRODUCER_COMMIT = "a" * 40 # Hours between the fixture timestamp and generation time. Comfortably inside # the consumer's 48h "fresh" band, and far enough from zero to look like a real # overnight run rather than a synthetic instant. FRESH_OFFSET_HOURS = 6 +STALE_RECEIPT_AGE_HOURS = 25 # Number of timestamped snapshots emitted for the trends view, newest first. HISTORY_POINTS = 9 @@ -42,7 +59,7 @@ # attention_state -> (operating_path, lifecycle_state) _ATTENTION_INTENT = { - "active-product": ("operate", "active"), + "active-product": ("maintain", "active"), "active-infra": ("maintain", "active"), "decision-needed": ("finish", "active"), "experiment": ("experiment", "active"), @@ -415,6 +432,22 @@ class DemoProject: "archive": "Archived", } +_GROUP_CATEGORIES = { + "flagship": "commercial", + "platform": "infrastructure", + "studio": "fun", + "lab": "learning", + "archive": "it-work", +} + + +def _category_for(spec: DemoProject) -> str: + if spec.attention == "active-infra": + return "infrastructure" + if spec.attention == "active-product": + return "commercial" + return _GROUP_CATEGORIES[spec.group] + _PURPOSES = { "flagship": "Operator-facing product surface with an active release lane.", "platform": "Shared platform service other demo projects depend on.", @@ -444,10 +477,10 @@ def _observed_provider( return { "state": "observed", "completed": True, - "reason": "observed", + "reason": None, "reason_code": "observed", "http_status": 200, - "http_classification": "ok", + "http_classification": "success", "conditional": {"requested": True, "result": "modified"}, "etag": None, "last_modified": None, @@ -476,6 +509,24 @@ def _unavailable_provider(observed_at: str) -> dict[str, Any]: } +def _stale_provider(observed_at: str) -> dict[str, Any]: + return { + "state": "stale", + "completed": False, + "reason": "receipt_stale", + "reason_code": "stale_observation", + "http_status": 200, + "http_classification": "success", + "conditional": {"requested": True, "result": "modified"}, + "etag": None, + "last_modified": None, + "observed_at": observed_at, + "pagination_complete": True, + "counts": None, + "zero_findings": None, + } + + def _security_block( spec: DemoProject, alerts: tuple[int, ...], observed_at: str ) -> dict[str, Any]: @@ -503,6 +554,10 @@ def _security_block( } if spec.coverage == "stale": + source_produced_at = _iso( + datetime.fromisoformat(observed_at) + - timedelta(hours=STALE_RECEIPT_AGE_HOURS) + ) return { "alerts_available": False, "coverage_state": "stale", @@ -510,8 +565,11 @@ def _security_block( "cohort_policy": COHORT_POLICY, "receipt_schema_version": GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION, "receipt_state": "stale", - "source_produced_at": observed_at, - "providers": {}, + "source_produced_at": source_produced_at, + "providers": { + name: _stale_provider(source_produced_at) + for name in ("dependabot", "code_scanning", "secret_scanning") + }, "dependabot_critical": None, "dependabot_high": None, "dependabot_medium": None, @@ -580,10 +638,100 @@ def _security_block( "code_scanning_critical": cs_crit, "code_scanning_high": cs_high, "secret_scanning_open": secrets, - "open_high_critical": dep_crit + dep_high + cs_crit + cs_high, + "open_high_critical": dep_crit + dep_high, } +def _repository_state( + *, + group: str, + slug: str, + observed_at: str, + security: dict[str, Any], +) -> dict[str, Any]: + source_produced_at = security["source_produced_at"] + if security["receipt_state"] == "stale": + remote = _remote_repository_result( + state="stale", + observed_at=source_produced_at, + reason="receipt_stale", + ) + elif security["receipt_schema_version"]: + remote = _remote_repository_result( + state="observed", + observed_at=source_produced_at, + reason=None, + default_branch="main", + head_sha=hashlib.sha256(f"{DEMO_ORG}/{slug}".encode()).hexdigest(), + archived=False, + ) + else: + remote = { + "state": "unknown", + "reason_code": "not_requested", + "reason": ( + "no independent live remote read was performed by portfolio generation" + ), + } + path = f"{DEMO_WORKSPACE_ROOT}/{group}/{slug}" + head = remote.get("head_sha") or hashlib.sha256(path.encode()).hexdigest() + local = { + "path": path, + "head": head, + "branch": "main", + "dirty": False, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + } + worktree = { + "state": "observed", + **local, + "detached": False, + "bare": False, + } + if remote["state"] == "observed": + selection = { + "source": remote["source"], + "state": "selected", + "reason_code": "unique_remote_head_match", + "reason": None, + "candidate_count": 1, + "path": path, + "head": head, + "branch": "main", + } + else: + selection = { + "source": remote.get("source", "remote_default_branch"), + "state": "unknown", + "reason_code": "remote_default_branch_unavailable", + "reason": ( + "independent remote-default evidence is not observed " + f"(state={remote['state']})" + ), + "candidate_count": 0, + } + topology = { + "kind": "working_repository", + "configured_path": path, + "worktree_count": 1, + "linked_worktree_count": 0, + "selection": selection, + } + return _observed_result( + observed_at=datetime.fromisoformat(observed_at), + remote=remote, + worktrees=[worktree], + topology=topology, + local=local, + ) + + def resolved_coverage_state(security: dict[str, Any]) -> str: """Mirror of the consumer's receipt gate, used to keep rollups honest. @@ -631,50 +779,6 @@ def observed(name: str) -> bool: return "partial" if any(observed(name) for name in required) else "unknown" -def _risk( - spec: DemoProject, security: dict[str, Any], context_quality: str -) -> dict[str, Any]: - open_high_critical = security.get("open_high_critical") or 0 - factors: list[str] = [] - if open_high_critical: - factors.append(f"{open_high_critical} open high/critical security alerts") - if not spec.has_tests: - factors.append("no automated tests") - if not spec.has_ci: - factors.append("no CI workflow") - if context_quality in {"minimum-viable", "boilerplate"}: - factors.append("thin project context") - if spec.activity == "stale" and spec.attention != "archived": - factors.append("no meaningful activity in the recent window") - if resolved_coverage_state(security) in {"stale", "unknown"}: - factors.append("security coverage unobserved") - - if spec.attention == "archived": - tier = "deferred" - elif open_high_critical: - tier = "elevated" - elif spec.attention == "decision-needed" or len(factors) >= 3: - tier = "moderate" - else: - tier = "baseline" - - summaries = { - "elevated": "Open high or critical alerts need an operator decision.", - "moderate": "Context or coverage gaps are worth closing this cycle.", - "baseline": "No elevated pressure; routine cadence is sufficient.", - "deferred": "Archived project; risk is accepted and not tracked.", - } - return { - "risk_tier": tier, - "risk_factors": factors, - "risk_summary": summaries[tier], - "security_risk": open_high_critical > 0, - "doctor_gap": not spec.has_ci, - "context_risk": context_quality in {"minimum-viable", "boilerplate"}, - "path_risk": spec.attention == "decision-needed", - } - - def _pressure_alerts(spec: DemoProject, index: int, pressure: int) -> tuple[int, ...]: """Scale a project's alert counts by historical backlog pressure. @@ -690,25 +794,156 @@ def _pressure_alerts(spec: DemoProject, index: int, pressure: int) -> tuple[int, def build_projects( - generated_at: datetime, *, pressure: int = 0 + generated_at: datetime, + *, + pressure: int = 0, + project_specs: tuple[DemoProject, ...] = DEMO_PROJECTS, ) -> list[dict[str, Any]]: """Build the synthetic project records for one point in time.""" stamp = _iso(generated_at) projects: list[dict[str, Any]] = [] - for index, spec in enumerate(DEMO_PROJECTS): + for index, spec in enumerate(project_specs): slug = _slug(spec.codename) context_quality = ( "none" if spec.attention == "archived" else _CONTEXT_QUALITY_CYCLE[index % len(_CONTEXT_QUALITY_CYCLE)] ) - operating_path, lifecycle_state = _ATTENTION_INTENT[spec.attention] + declared_operating_path, lifecycle_state = _ATTENTION_INTENT[spec.attention] + archived = spec.attention == "archived" security = _security_block(spec, _pressure_alerts(spec, index, pressure), stamp) - context_files = ["README.md"] + repository_state = _repository_state( + group=spec.group, + slug=slug, + observed_at=stamp, + security=security, + ) + context_files = ["AGENTS.md"] if context_quality in {"full", "standard"}: context_files.append("docs/current-state.md") if context_quality == "full": context_files.append("docs/architecture.md") + has_minimum_context = context_quality in { + "minimum-viable", + "standard", + "full", + } + declared = { + "operating_path": declared_operating_path, + "category": _category_for(spec), + "tool_provenance": "codex" if index % 2 else "claude-code", + "lifecycle_state": lifecycle_state, + "purpose": _PURPOSES[spec.group], + "owner": "demo-operator", + "team": "", + "criticality": "high" if spec.group == "flagship" else "medium", + "review_cadence": "weekly" if spec.group == "flagship" else "monthly", + "intended_disposition": "", + "maturity_program": "maintain", + "target_maturity": "operating", + "notes": "", + "doctor_standard": "", + "automation_eligible": context_quality + in {"minimum-viable", "boilerplate"}, + } + path_entry = build_operating_path_entry( + {**declared, "has_explicit_entry": True}, + context_quality=context_quality, + archived=archived, + ) + operating_path = str(path_entry["operating_path"]) + path_override = str(path_entry["path_override"]) + declared["operating_path"] = operating_path + derived = { + "context_quality": context_quality, + "activity_status": spec.activity, + "archived": archived, + "stack": list(spec.stack), + "stack_present": has_minimum_context, + "context_files": context_files, + "context_file_count": len(context_files), + "primary_context_file": "AGENTS.md", + "project_summary_present": context_quality != "none", + "current_state_present": has_minimum_context, + "run_instructions_present": has_minimum_context, + "known_risks_present": has_minimum_context, + "next_recommended_move_present": has_minimum_context, + "last_meaningful_activity_at": _iso( + generated_at - timedelta(days=_ACTIVITY_AGE_DAYS[spec.activity]) + ), + "has_tests": spec.has_tests, + "has_ci": spec.has_ci, + "has_license": spec.attention != "archived", + "readme_char_count": 900 + index * 137, + "release_count": 3 if spec.group == "flagship" else 0, + "path_override": path_override, + "path_confidence": path_entry["path_confidence"], + "path_rationale": path_entry["path_rationale"], + } + risk, attention_state = build_project_decision( + display_name=spec.codename, + operating_path=operating_path, + path_override=path_override, + context_quality=context_quality, + activity_status=spec.activity, + archived=derived["archived"], + lifecycle_state=lifecycle_state, + category=declared["category"], + criticality=declared["criticality"], + doctor_standard=declared["doctor_standard"], + known_risks_present=derived["known_risks_present"], + run_instructions_present=derived["run_instructions_present"], + security_coverage_state=security["coverage_state"], + security_high_alerts=security.get("dependabot_high") or 0, + security_critical_alerts=security.get("dependabot_critical") or 0, + ) + derived["attention_state"] = attention_state + provenance_values = { + "declared": declared, + "derived": derived, + "risk": risk, + } + provenance: dict[str, dict[str, str]] = {} + for key in sorted(REQUIRED_PROJECT_PROVENANCE_KEYS): + section, field = key.split(".", 1) + value = provenance_values[section][field] + if key == "derived.context_files": + detail = str(len(value)) + elif isinstance(value, bool): + detail = str(value).lower() + elif isinstance(value, list): + detail = ", ".join(str(item) for item in value) + else: + detail = str(value) + provenance[key] = {"source": "demo-fixture", "detail": detail} + provenance.update( + { + "declared.operating_path": { + "source": "normalized", + "detail": str(path_entry["operating_path_source"]), + }, + "derived.path_override": { + "source": "normalized", + "detail": path_override, + }, + "derived.path_confidence": { + "source": "normalized", + "detail": str(path_entry["path_confidence"]), + }, + "derived.path_rationale": { + "source": "normalized", + "detail": str(path_entry["path_rationale"]), + }, + "risk.risk_tier": { + "source": "derived", + "detail": str(risk["risk_tier"]), + }, + "risk.doctor_gap": { + "source": "derived", + "detail": str(risk["doctor_gap"]).lower(), + }, + } + ) projects.append( { @@ -725,56 +960,12 @@ def build_projects( "section_label": _GROUP_LABELS[spec.group], "default_branch": "main", }, - "declared": { - "operating_path": operating_path, - "category": spec.group, - "tool_provenance": "codex" if index % 2 else "claude-code", - "lifecycle_state": lifecycle_state, - "purpose": _PURPOSES[spec.group], - "owner": "demo-operator", - "team": "", - "criticality": "high" if spec.group == "flagship" else "medium", - "review_cadence": "weekly" - if spec.group == "flagship" - else "monthly", - "intended_disposition": "", - "maturity_program": "maintain", - "target_maturity": "operating", - "notes": "", - "doctor_standard": "", - "automation_eligible": context_quality - in {"minimum-viable", "boilerplate"}, - }, - "derived": { - "context_quality": context_quality, - "attention_state": spec.attention, - "activity_status": spec.activity, - "archived": spec.attention == "archived", - "stack": list(spec.stack), - "stack_present": True, - "context_files": context_files, - "context_file_count": len(context_files), - "primary_context_file": "README.md", - "project_summary_present": context_quality != "none", - "current_state_present": context_quality in {"full", "standard"}, - "run_instructions_present": context_quality != "boilerplate", - "known_risks_present": context_quality == "full", - "next_recommended_move_present": context_quality - in {"full", "standard"}, - "last_meaningful_activity_at": _iso( - generated_at - timedelta(days=_ACTIVITY_AGE_DAYS[spec.activity]) - ), - "has_tests": spec.has_tests, - "has_ci": spec.has_ci, - "has_license": spec.attention != "archived", - "readme_char_count": 900 + index * 137, - "release_count": 3 if spec.group == "flagship" else 0, - "path_override": "", - "path_confidence": "high" if spec.group == "flagship" else "medium", - "path_rationale": f"Stable path is {operating_path} from explicit operating path.", - }, - "risk": _risk(spec, security, context_quality), + "declared": declared, + "derived": derived, + "risk": risk, "security": security, + "repository_state": repository_state, + "provenance": provenance, "advisory": { "notion_portfolio_call": "", "notion_momentum": "", @@ -790,114 +981,91 @@ def build_projects( -def build_snapshot(generated_at: datetime, *, pressure: int = 0) -> dict[str, Any]: +def build_snapshot( + generated_at: datetime, + *, + pressure: int = 0, + project_specs: tuple[DemoProject, ...] = DEMO_PROJECTS, +) -> dict[str, Any]: """Build a complete portfolio-truth snapshot at the current schema.""" - projects = build_projects(generated_at, pressure=pressure) - - coverage_states = Counter( - resolved_coverage_state(project["security"]) for project in projects + projects = build_projects( + generated_at, + pressure=pressure, + project_specs=project_specs, ) - risk_tiers = Counter(project["risk"]["risk_tier"] for project in projects) - attention = Counter(project["derived"]["attention_state"] for project in projects) - activity = Counter(project["derived"]["activity_status"] for project in projects) - context_quality = Counter( - project["derived"]["context_quality"] for project in projects + projects.sort( + key=lambda item: ( + item["identity"]["section_marker"].lower(), + item["identity"]["display_name"].lower(), + ) ) - observed = [ - project - for project in projects - if resolved_coverage_state(project["security"]) in {"complete", "partial"} - ] - total_open_high = sum(p["security"]["dependabot_high"] or 0 for p in observed) - total_open_critical = sum( - p["security"]["dependabot_critical"] or 0 for p in observed + source_summary = build_source_summary( + workspace_root=DEMO_WORKSPACE_ROOT, + projects=projects, + catalog_errors=[], + catalog_warnings=[], + legacy_registry_rows=len(projects), + notion_context_rows=0, + notion_context_carried_forward=False, ) - return { + payload = { "schema_version": SCHEMA_VERSION, "derivation_policy_version": DERIVATION_POLICY_VERSION, "generated_at": _iso(generated_at), "workspace_root": DEMO_WORKSPACE_ROOT, - "producer": { - "repository": f"{DEMO_ORG}/portfolio-auditor", - "checkout_role": "demo-fixture", - "worktree_clean": True, - "dirty_path_count": 0, - "verified_at": _iso(generated_at), - }, - "source_summary": { - "workspace_root": DEMO_WORKSPACE_ROOT, - "project_count": len(projects), - "catalog_errors": [], - "catalog_warnings": [], - "legacy_registry_rows": len(projects), - "notion_context_rows": 0, - "notion_context_carried_forward": 0, - "context_quality_counts": dict(context_quality), - "activity_status_counts": dict(activity), - "attention_state_counts": dict(attention), - "archived_count": attention.get("archived", 0), - "github_archived_count": 0, - "duplicate_display_names": [], - "unresolved_duplicate_display_names": [], - }, - "precedence_matrix": { - "identity": ["demo fixture"], - "declared": ["demo fixture"], - "derived": ["demo fixture"], - "risk": ["demo fixture"], - "security": ["demo fixture receipt"], - }, - "coverage": [ - { - "source": "workspace", - "state": "observed", - "project_count": len(projects), - }, - { - "source": "github_security", - "state": "partial", - "project_count": len(projects), - "complete_repo_count": coverage_states.get("complete", 0), - "partial_repo_count": coverage_states.get("partial", 0), - "stale_count": coverage_states.get("stale", 0), - "unknown_count": coverage_states.get("unknown", 0), - }, - ], - "exclusions": [], - "inputs": [], - "warnings": [], - "projects": projects, - "rollups": { - "risk_tier_counts": { - tier: risk_tiers.get(tier, 0) - for tier in ("elevated", "moderate", "baseline", "deferred") - }, - "security": { - "coverage_state": "partial", - "complete_repo_count": coverage_states.get("complete", 0), - "partial_repo_count": coverage_states.get("partial", 0), - "stale_count": coverage_states.get("stale", 0), - "unknown_count": coverage_states.get("unknown", 0), - "scanned_count": coverage_states.get("complete", 0), - "repos_with_open_high_critical": sum( - 1 - for p in observed - if (p["security"]["open_high_critical"] or 0) > 0 - ), - "total_open_high": total_open_high, - "total_open_critical": total_open_critical, - }, - "decision": { - "decision_needed_count": attention.get("decision-needed", 0), - "default_attention_count": sum( - attention.get(state, 0) - for state in ("active-product", "active-infra", "decision-needed") + # Synthetic demo output is not emitted by an attested producer checkout. + # Canonical truth represents absent evidence as an empty object; partial + # invented evidence would fail the publication contract. + "producer": {}, + "source_summary": source_summary, + "precedence_matrix": build_precedence_matrix(), + "coverage": build_coverage_envelope( + projects=projects, + notion_context_carried_forward=False, + notion_context_rows=0, + ), + "exclusions": build_exclusions({}), + "inputs": build_input_envelope( + workspace_root=DEMO_WORKSPACE_ROOT, + catalog_path=None, + now=generated_at, + include_notion=False, + notion_context_rows=0, + notion_context_carried_forward=False, + prior_notion_generated_at=None, + notion_source_mode="unavailable", + notion_observed_at=None, + security_coverage_metadata={ + "source_id": "github-security-coverage-receipt", + "schema_version": GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION, + "produced_at": _iso(generated_at), + "state": "fresh", + "age_hours": 0.0, + "producer_commit": DEMO_SECURITY_PRODUCER_COMMIT, + "cohort_policy": COHORT_POLICY, + "cohort_repository_count": sum( + project["security"]["cohort_member"] for project in projects ), + "path": "/demo-workspace/github-security-coverage.json", + "receipt_id": "sha256:" + "b" * 64, + "content_sha256": "b" * 64, }, - }, + ), + "warnings": build_warnings( + catalog_errors=[], + catalog_warnings=[], + unresolved_duplicates=[], + ), + "projects": projects, } + from src.portfolio_truth_validate import canonicalize_truth_snapshot_payload + + return canonicalize_truth_snapshot_payload( + payload, + allow_synthetic_security_matrix=True, + ) def history_snapshots(generated_at: datetime) -> list[tuple[str, dict[str, Any]]]: diff --git a/src/github_security_coverage.py b/src/github_security_coverage.py index 184de987..6363051b 100644 --- a/src/github_security_coverage.py +++ b/src/github_security_coverage.py @@ -61,6 +61,17 @@ "stale", } ) +PROVIDER_CONDITIONAL_RESULTS = frozenset( + { + "not_used", + "modified", + "not_modified", + "failed", + "malformed", + "incomplete", + "invalid_prior", + } +) REMOTE_REPOSITORY_STATES = frozenset( { "observed", @@ -83,6 +94,101 @@ _RECEIPT_ID_RE = re.compile(r"^sha256:[0-9a-f]{64}$") _SHA256_RE = re.compile(r"^[0-9a-f]{64}$") +_PROVIDER_NOT_REQUESTED_REASONS = frozenset( + { + "authentication_missing", + "base_request_limit", + "collection_halted", + "fixture_not_requested", + "quota_reserve", + "quota_reserve_before_pagination_complete", + "rate_limited", + "total_request_limit", + } +) +_REMOTE_REASON_DOMAINS = { + "observed": frozenset({None}), + "partial": frozenset({"default_branch_head_unavailable"}), + "not_requested": frozenset( + { + "authentication_missing", + "base_request_limit", + "quota_reserve", + "rate_limited", + "remote_observation_not_in_receipt", + "total_request_limit", + } + ), + "credential_unavailable": frozenset( + { + "github_authentication_missing", + "github_graphql_authentication_missing", + } + ), + "forbidden": frozenset( + {"github_forbidden", "github_graphql_forbidden"} + ), + "not_found": frozenset( + {"github_graphql_repository_not_found", "repository_not_returned"} + ), + "rate_limited": frozenset( + {"github_graphql_rate_limited", "github_rate_limit"} + ), + "transient_error": frozenset({"network_error"}), + "malformed": frozenset( + { + "github_gone", + "github_graphql_error", + "github_not_found", + "non_object_payload", + "repository_archived_state_invalid", + "repository_identity_mismatch", + } + ), + "stale": frozenset({"receipt_stale"}), +} + + +def _valid_git_oid(value: Any) -> bool: + """Return whether *value* is a nonzero full lowercase SHA-1 or SHA-256 id.""" + return ( + isinstance(value, str) + and len(value) in {40, 64} + and re.fullmatch(r"[0-9a-f]+", value) is not None + and set(value) != {"0"} + ) + + +def _valid_git_ref_name(value: Any, *, branch: bool = False) -> bool: + """Mirror Git ref-format rules for branch and remote-tracking names.""" + if not isinstance(value, str) or not value or (value == "@" and not branch): + return False + if branch and (value.startswith("-") or value == "HEAD"): + return False + if ( + value.startswith("/") + or value.endswith(("/", ".")) + or "//" in value + or ".." in value + or "@{" in value + or re.search(r"[\x00-\x20\x7f~^:?*\[\\]", value) is not None + ): + return False + return all( + component + and not component.startswith(".") + and not component.endswith(".lock") + for component in value.split("/") + ) + + +def _valid_git_branch(value: Any) -> bool: + return _valid_git_ref_name(value, branch=True) + + +def _valid_git_upstream(value: Any) -> bool: + return _valid_git_ref_name(value, branch=True) + _ENDPOINTS = { "dependabot": "dependabot/alerts", "code_scanning": "code-scanning/alerts", @@ -390,6 +496,210 @@ def _remote_reason_code(state: str) -> str: }[state] +def _validate_provider_reason_domain( + provider: str, + *, + state: str, + http_status: int | None, + reason: str | None, + conditional_result: str, +) -> None: + valid = False + if state in {"observed", "stale"}: + return + if state == "not_requested": + valid = reason in _PROVIDER_NOT_REQUESTED_REASONS + elif state == "credential_unavailable": + valid = reason == "github_authentication_missing" + elif state == "forbidden": + valid = reason == "github_forbidden" + elif state == "feature_unavailable": + valid = ( + provider == "code_scanning" + and http_status == 403 + and reason == "code_scanning_not_enabled" + ) or ( + provider in {"code_scanning", "secret_scanning"} + and http_status == 200 + and reason == ELIGIBILITY_REASON + ) + elif state == "not_found": + valid = reason == "github_not_found" + elif state == "gone": + valid = reason == "github_gone" + elif state == "rate_limited": + valid = reason == "github_rate_limit" + elif state == "transient_error": + valid = reason == "network_error" if http_status is None else ( + http_status >= 500 and reason == f"github_http_{http_status}" + ) + elif state == "malformed": + valid = ( + http_status == 200 + and reason == "non_list_or_invalid_alert_payload" + and conditional_result == "malformed" + ) or ( + http_status == 304 + and reason == "conditional_response_without_observed_prior" + and conditional_result == "invalid_prior" + ) or ( + http_status is not None + and http_status < 500 + and http_status not in {200, 304, 401, 403, 404, 410, 429} + and reason == f"unexpected_http_{http_status}" + ) + if not valid: + raise SecurityCoverageError( + f"{provider}.{state} reason is outside the producer reason domain" + ) + + +def _validate_provider_conditional_domain( + provider: str, + *, + state: str, + http_status: int | None, + reason: str | None, + conditional: dict[str, Any], +) -> None: + requested = conditional["requested"] + result = conditional["result"] + valid = False + if state in {"observed", "stale"}: + valid = ( + http_status == 200 + and result == ("modified" if requested else "not_used") + ) or (http_status == 304 and requested and result == "not_modified") + elif state == "not_requested": + incomplete_reasons = { + "base_request_limit", + "quota_reserve_before_pagination_complete", + "total_request_limit", + } + valid = (not requested and result == "not_used") or ( + reason in incomplete_reasons and result == "incomplete" + ) + elif state == "credential_unavailable": + valid = ( + http_status is None and not requested and result == "not_used" + ) or (http_status == 401 and result == "failed") + elif state == "feature_unavailable" and reason == ELIGIBILITY_REASON: + valid = not requested and result == "not_used" + elif state == "malformed": + valid = ( + http_status == 200 and result == "malformed" + ) or ( + http_status == 304 and requested and result == "invalid_prior" + ) or ( + reason is not None + and reason.startswith("unexpected_http_") + and result == "failed" + ) + elif state in { + "forbidden", + "feature_unavailable", + "not_found", + "gone", + "rate_limited", + "transient_error", + }: + valid = result == "failed" + if not valid: + raise SecurityCoverageError( + f"{provider}.{state} conditional metadata is outside the producer domain" + ) + + +def _validate_remote_reason_domain(state: str, reason: Any) -> None: + domain = _REMOTE_REASON_DOMAINS[state] + valid = reason in domain + if state == "transient_error" and isinstance(reason, str): + match = re.fullmatch(r"github_http_(\d+)", reason) + valid = valid or (match is not None and int(match.group(1)) >= 500) + elif state == "malformed" and isinstance(reason, str): + match = re.fullmatch(r"unexpected_http_(-?\d+)", reason) + valid = valid or ( + match is not None + and int(match.group(1)) < 500 + and int(match.group(1)) + not in {200, 304, 401, 403, 404, 410, 429} + ) + if not valid: + raise SecurityCoverageError( + f"repository.{state} reason is outside the producer reason domain" + ) + + +def _validate_normalized_remote_repository(value: dict[str, Any]) -> None: + required = { + "source", + "state", + "reason_code", + "reason", + "observed_at", + "default_branch", + "head_sha", + "archived", + } + if set(value) != required: + raise SecurityCoverageError( + "normalized repository observation fields are invalid" + ) + if value.get("source") != REMOTE_REPOSITORY_SOURCE: + raise SecurityCoverageError("repository observation source is invalid") + state = _text(value.get("state")) + if state not in REMOTE_REPOSITORY_STATES: + raise SecurityCoverageError( + f"repository observation state is invalid: {state!r}" + ) + if value.get("reason_code") != _remote_reason_code(state): + raise SecurityCoverageError( + "repository observation reason_code does not match state" + ) + _validate_remote_reason_domain(state, value.get("reason")) + + observed_at = value.get("observed_at") + if observed_at is not None: + _parse_datetime(observed_at, field_name="repository.observed_at") + default_branch = value.get("default_branch") + head_sha = value.get("head_sha") + archived = value.get("archived") + if state == "observed": + if observed_at is None: + raise SecurityCoverageError( + "repository.observed_at is required when observed" + ) + if not _valid_git_branch(default_branch): + raise SecurityCoverageError( + "repository.default_branch is invalid when observed" + ) + if not _valid_git_oid(head_sha): + raise SecurityCoverageError( + "repository.head_sha is invalid when observed" + ) + if not isinstance(archived, bool): + raise SecurityCoverageError( + "repository.archived must be boolean when observed" + ) + elif state == "partial": + if observed_at is None or not isinstance(archived, bool): + raise SecurityCoverageError( + "partial repository observation requires timestamp and archived state" + ) + if default_branch is not None or head_sha is not None: + raise SecurityCoverageError( + "partial repository observation cannot claim branch or head" + ) + elif state == "stale" and observed_at is None: + raise SecurityCoverageError( + "repository.observed_at is required when stale" + ) + elif any(item is not None for item in (default_branch, head_sha, archived)): + raise SecurityCoverageError( + "unobserved repository state cannot claim remote values" + ) + + def _provider_result( provider: str, *, @@ -412,7 +722,7 @@ def _provider_result( and pagination_complete and isinstance(counts, dict) ) - return { + result = { "state": state, "reason_code": _provider_reason_code(state), "observed_at": observed_at, @@ -441,6 +751,289 @@ def _provider_result( ), "counts": counts if state == "observed" else None, } + validate_normalized_security_provider(provider, result) + return result + + +def validate_normalized_security_provider( + provider: str, + value: Any, + *, + produced_at: datetime | None = None, + current: datetime | None = None, + max_age_hours: int | None = None, + receipt_is_stale: bool = False, +) -> dict[str, Any]: + """Validate one provider envelope after receipt normalization.""" + if provider not in PROVIDER_NAMES: + raise SecurityCoverageError(f"invalid security provider: {provider}") + if not isinstance(value, dict): + raise SecurityCoverageError(f"{provider} normalized result must be an object") + required = { + "state", + "reason_code", + "observed_at", + "http_status", + "http_classification", + "reason", + "etag", + "last_modified", + "conditional", + "pagination_complete", + "completed", + "zero_findings", + "counts", + } + missing = sorted(required - value.keys()) + if missing: + raise SecurityCoverageError( + f"{provider} normalized result is missing fields: {missing}" + ) + unexpected = sorted(value.keys() - required) + if unexpected: + raise SecurityCoverageError( + f"{provider} normalized result has unexpected fields: {unexpected}" + ) + + state = _text(value.get("state")) + if state not in PROVIDER_STATES: + raise SecurityCoverageError(f"{provider}.state is invalid: {state!r}") + if value.get("reason_code") != _provider_reason_code(state): + raise SecurityCoverageError(f"{provider}.reason_code does not match state") + + conditional = value.get("conditional") + if ( + not isinstance(conditional, dict) + or set(conditional) != {"requested", "result"} + or not isinstance(conditional.get("requested"), bool) + or conditional.get("result") not in PROVIDER_CONDITIONAL_RESULTS + ): + raise SecurityCoverageError( + f"{provider}.conditional metadata is invalid" + ) + + observed_at_value = value.get("observed_at") + observed_at = None + if observed_at_value is not None: + observed_at = _parse_datetime( + observed_at_value, + field_name=f"{provider}.observed_at", + ) + if produced_at is not None and observed_at > produced_at: + raise SecurityCoverageError( + f"{provider}.observed_at is later than receipt produced_at" + ) + if current is not None and ( + current - observed_at + ).total_seconds() / 3600 < -0.05: + raise SecurityCoverageError(f"{provider}.observed_at is future-dated") + elif state != "not_requested": + raise SecurityCoverageError(f"{provider}.observed_at is required for {state}") + + if max_age_hours is not None: + if max_age_hours <= 0: + raise SecurityCoverageError("max_age_hours must be positive") + if current is None: + raise SecurityCoverageError( + "current is required when validating provider freshness" + ) + provider_age_hours = ( + (current - observed_at).total_seconds() / 3600 + if observed_at is not None + else None + ) + if state == "observed" and ( + receipt_is_stale + or provider_age_hours is None + or provider_age_hours > max_age_hours + ): + raise SecurityCoverageError( + f"{provider}.observed is older than the configured freshness window" + ) + if state == "stale" and not receipt_is_stale and ( + provider_age_hours is None or provider_age_hours <= max_age_hours + ): + raise SecurityCoverageError( + f"{provider}.stale is not justified by receipt or provider age" + ) + + http_status = value.get("http_status") + if http_status is not None and ( + not isinstance(http_status, int) or isinstance(http_status, bool) + ): + raise SecurityCoverageError( + f"{provider}.http_status must be an integer or null" + ) + reason = value.get("reason") + if reason is not None and not isinstance(reason, str): + raise SecurityCoverageError(f"{provider}.reason must be a string or null") + if state not in {"observed", "stale"} and not _text(reason): + raise SecurityCoverageError(f"{provider}.reason is required for {state}") + _validate_provider_reason_domain( + provider, + state=state, + http_status=http_status, + reason=reason, + conditional_result=conditional["result"], + ) + _validate_provider_conditional_domain( + provider, + state=state, + http_status=http_status, + reason=reason, + conditional=conditional, + ) + for field_name in ("etag", "last_modified"): + field_value = value.get(field_name) + if field_value is not None and not isinstance(field_value, str): + raise SecurityCoverageError( + f"{provider}.{field_name} must be a string or null" + ) + if not isinstance(value.get("pagination_complete"), bool): + raise SecurityCoverageError( + f"{provider}.pagination_complete must be boolean" + ) + if not isinstance(value.get("completed"), bool): + raise SecurityCoverageError(f"{provider}.completed must be boolean") + + if state in {"observed", "stale"}: + if http_status not in {200, 304}: + raise SecurityCoverageError( + f"{provider}.{state} requires HTTP 200 or 304" + ) + expected_classification = ( + "success" if http_status == 200 else "not_modified" + ) + expected_result = "not_modified" if http_status == 304 else ( + "modified" if conditional["requested"] else "not_used" + ) + if value.get("http_classification") != expected_classification: + raise SecurityCoverageError( + f"{provider}.http_classification does not match {state} response" + ) + if conditional["result"] != expected_result or ( + http_status == 304 and conditional["requested"] is not True + ): + raise SecurityCoverageError( + f"{provider}.conditional metadata does not match {state} response" + ) + if value.get("pagination_complete") is not True: + raise SecurityCoverageError( + f"{provider}.{state} requires complete pagination" + ) + if state == "observed": + expected_reason = None if http_status == 200 else "not_modified" + if reason != expected_reason: + raise SecurityCoverageError( + f"{provider}.reason does not match observed response" + ) + elif value.get("pagination_complete") is not False: + raise SecurityCoverageError( + f"{provider}.{state} cannot claim complete pagination" + ) + + if state == "not_requested": + if http_status is not None or value.get("http_classification") is not None: + raise SecurityCoverageError( + f"{provider}.not_requested cannot claim an HTTP response" + ) + if conditional["result"] not in {"not_used", "incomplete"}: + raise SecurityCoverageError( + f"{provider}.not_requested conditional result is invalid" + ) + if conditional["result"] == "not_used" and conditional["requested"]: + raise SecurityCoverageError( + f"{provider}.not_requested cannot claim an unused request" + ) + elif state == "credential_unavailable" and http_status not in {None, 401}: + raise SecurityCoverageError( + f"{provider}.credential_unavailable requires HTTP 401 or no response" + ) + elif state == "forbidden" and http_status != 403: + raise SecurityCoverageError(f"{provider}.forbidden requires HTTP 403") + elif state == "feature_unavailable": + if reason == ELIGIBILITY_REASON: + if ( + http_status != 200 + or value.get("http_classification") != "eligibility" + or conditional != {"requested": False, "result": "not_used"} + ): + raise SecurityCoverageError( + f"{provider}.feature_unavailable eligibility result is invalid" + ) + elif http_status not in {403, 404}: + raise SecurityCoverageError( + f"{provider}.feature_unavailable requires HTTP 403 or 404" + ) + elif state == "not_found" and http_status != 404: + raise SecurityCoverageError(f"{provider}.not_found requires HTTP 404") + elif state == "gone" and http_status != 410: + raise SecurityCoverageError(f"{provider}.gone requires HTTP 410") + elif state == "rate_limited" and http_status not in {403, 429}: + raise SecurityCoverageError( + f"{provider}.rate_limited requires HTTP 403 or 429" + ) + elif state == "transient_error" and not ( + http_status is None or http_status >= 500 + ): + raise SecurityCoverageError( + f"{provider}.transient_error requires a network failure or HTTP 5xx" + ) + + if state not in {"observed", "stale", "not_requested"}: + expected_classification = ( + None + if http_status is None + else "eligibility" + if state == "feature_unavailable" and reason == ELIGIBILITY_REASON + else "success" + if http_status == 200 + else "not_modified" + if http_status == 304 + else reason + ) + if value.get("http_classification") != expected_classification: + raise SecurityCoverageError( + f"{provider}.http_classification does not match its HTTP response" + ) + + counts = value.get("counts") + if state == "observed": + if ( + not isinstance(counts, dict) + or set(counts) != set(_COUNT_KEYS[provider]) + or any( + not isinstance(count, int) + or isinstance(count, bool) + or count < 0 + for count in counts.values() + ) + ): + raise SecurityCoverageError( + f"{provider}.counts are invalid for an observed result" + ) + if value.get("completed") is not True: + raise SecurityCoverageError( + f"{provider}.observed must be completed" + ) + if value.get("zero_findings") is not (sum(counts.values()) == 0): + raise SecurityCoverageError( + f"{provider}.zero_findings does not match observed counts" + ) + else: + if counts is not None: + raise SecurityCoverageError( + f"{provider}.{state} must clear counts" + ) + if value.get("completed") is not False or value.get("zero_findings") is not None: + raise SecurityCoverageError( + f"{provider}.{state} cannot claim a completed observation" + ) + if state == "stale" and reason != "receipt_stale": + raise SecurityCoverageError( + f"{provider}.stale requires receipt_stale reason" + ) + return dict(value) def _response_message(response: requests.Response) -> str: @@ -963,7 +1556,7 @@ def _remote_repository_result( ) -> dict[str, Any]: if state not in REMOTE_REPOSITORY_STATES: raise SecurityCoverageError(f"invalid remote repository state: {state}") - return { + result = { "source": REMOTE_REPOSITORY_SOURCE, "state": state, "reason_code": _remote_reason_code(state), @@ -973,6 +1566,8 @@ def _remote_repository_result( "head_sha": head_sha if state == "observed" else None, "archived": archived if state in {"observed", "partial"} else None, } + _validate_normalized_remote_repository(result) + return result def _remote_failure_results( @@ -1150,7 +1745,7 @@ def _collect_remote_repository_observations( observed_at=now_iso, reason="repository_archived_state_invalid", ) - elif not default_branch or not re.fullmatch(r"[0-9a-f]{40,64}", head_sha): + elif not _valid_git_branch(default_branch) or not _valid_git_oid(head_sha): results[expected_repo] = _remote_repository_result( state="partial", observed_at=now_iso, @@ -1526,15 +2121,7 @@ def _validate_provider( conditional = _mapping(data.get("conditional")) if not isinstance(conditional.get("requested"), bool) or conditional.get( "result" - ) not in { - "not_used", - "modified", - "not_modified", - "failed", - "malformed", - "incomplete", - "invalid_prior", - }: + ) not in PROVIDER_CONDITIONAL_RESULTS: raise SecurityCoverageError(f"{provider}.conditional metadata is invalid") if http_status is not None and ( not isinstance(http_status, int) or isinstance(http_status, bool) @@ -1645,7 +2232,7 @@ def _validate_provider( state = "stale" counts = None normalized_completed = state == "observed" and raw_completed - return { + normalized = { "state": state, "reason_code": _provider_reason_code(state), "observed_at": data.get("observed_at"), @@ -1660,6 +2247,14 @@ def _validate_provider( "zero_findings": raw_zero_findings if normalized_completed else None, "counts": counts, } + return validate_normalized_security_provider( + provider, + normalized, + produced_at=produced_at, + current=current, + max_age_hours=max_age_hours, + receipt_is_stale=receipt_is_stale, + ) def _validate_remote_repository( @@ -1715,13 +2310,11 @@ def _validate_remote_repository( raise SecurityCoverageError( "repository.observed_at is required when observed" ) - if not isinstance(default_branch, str) or not default_branch.strip(): + if not _valid_git_branch(default_branch): raise SecurityCoverageError( - "repository.default_branch is required when observed" + "repository.default_branch is invalid when observed" ) - if not isinstance(head_sha, str) or not re.fullmatch( - r"[0-9a-f]{40,64}", head_sha - ): + if not _valid_git_oid(head_sha): raise SecurityCoverageError( "repository.head_sha is invalid when observed" ) @@ -1729,6 +2322,10 @@ def _validate_remote_repository( raise SecurityCoverageError( "repository.archived must be boolean when observed" ) + if data.get("reason") is not None: + raise SecurityCoverageError( + "repository.reason must be null when observed" + ) elif state == "partial": if observed_at is None or not isinstance(archived, bool): raise SecurityCoverageError( @@ -1738,10 +2335,15 @@ def _validate_remote_repository( raise SecurityCoverageError( "partial repository observation cannot claim branch or head" ) + elif state == "stale" and observed_at is None: + raise SecurityCoverageError( + "repository.observed_at is required when stale" + ) elif any(value is not None for value in (default_branch, head_sha, archived)): raise SecurityCoverageError( "unobserved repository state cannot claim remote values" ) + _validate_remote_reason_domain(state, data.get("reason")) if state in {"observed", "partial"} and observed_at is not None: observation_age_hours = (current - observed_at).total_seconds() / 3600 @@ -1750,7 +2352,7 @@ def _validate_remote_repository( default_branch = None head_sha = None archived = None - return { + normalized = { "source": REMOTE_REPOSITORY_SOURCE, "state": state, "reason_code": _remote_reason_code(state), @@ -1760,6 +2362,8 @@ def _validate_remote_repository( "head_sha": head_sha, "archived": archived, } + _validate_normalized_remote_repository(normalized) + return normalized def validate_security_coverage_receipt( diff --git a/src/portfolio_repository_state.py b/src/portfolio_repository_state.py index e0a11cf8..adbbd6a9 100644 --- a/src/portfolio_repository_state.py +++ b/src/portfolio_repository_state.py @@ -128,15 +128,29 @@ def _observe_working_tree(path: Path) -> dict[str, Any]: head = _git(path, "rev-parse", "HEAD") branch = _git(path, "branch", "--show-current") or None dirty = _git(path, "status", "--porcelain", "--untracked-files=all") - upstream = _git_optional(path, "rev-parse", "--abbrev-ref", "@{upstream}") + resolved_upstream = _git_optional( + path, "rev-parse", "--abbrev-ref", "@{upstream}" + ) + upstream_remote, upstream_branch = _upstream_identity( + path, branch=branch, upstream=resolved_upstream + ) + upstream = ( + upstream_branch + if upstream_remote == "." + else ( + f"{upstream_remote}/{upstream_branch}" + if upstream_remote is not None and upstream_branch is not None + else None + ) + ) ahead = behind = None - if upstream: + if resolved_upstream: counts = _git( path, "rev-list", "--left-right", "--count", - f"{upstream}...HEAD", + f"{resolved_upstream}...HEAD", ) behind_text, ahead_text = counts.split() behind, ahead = int(behind_text), int(ahead_text) @@ -147,6 +161,8 @@ def _observe_working_tree(path: Path) -> dict[str, Any]: "dirty": bool(dirty), "dirty_path_count": len(dirty.splitlines()) if dirty else 0, "upstream": upstream, + "upstream_branch": upstream_branch, + "upstream_remote": upstream_remote, "upstream_observation_source": ( "local_tracking_ref" if upstream else "unavailable" ), @@ -155,6 +171,28 @@ def _observe_working_tree(path: Path) -> dict[str, Any]: } +def _upstream_identity( + path: Path, + *, + branch: str | None, + upstream: str | None, +) -> tuple[str | None, str | None]: + if upstream is None: + return None, None + if branch is None: + raise ValueError("detached worktree unexpectedly has an upstream") + merge_ref = _git_optional(path, "config", "--get", f"branch.{branch}.merge") + prefix = "refs/heads/" + if not merge_ref or not merge_ref.startswith(prefix) or merge_ref == prefix: + raise ValueError("tracked branch has no exact refs/heads merge target") + upstream_remote = _git_optional( + path, "config", "--get", f"branch.{branch}.remote" + ) + if not upstream_remote: + raise ValueError("tracked branch has no exact configured remote") + return upstream_remote, merge_ref.removeprefix(prefix) + + def _observe_bare_coordinator(path: Path) -> dict[str, Any]: head = _git_optional(path, "rev-parse", "--verify", "HEAD^{commit}") branch = _git_optional(path, "symbolic-ref", "--short", "HEAD") @@ -324,6 +362,8 @@ def _local_from_worktree(worktree: dict[str, Any]) -> dict[str, Any]: "dirty", "dirty_path_count", "upstream", + "upstream_branch", + "upstream_remote", "upstream_observation_source", "ahead", "behind", @@ -333,10 +373,9 @@ def _local_from_worktree(worktree: dict[str, Any]) -> dict[str, Any]: def _tracks_nonmatching_branch(local: dict[str, Any]) -> bool: branch = str(local.get("branch") or "") - upstream = str(local.get("upstream") or "") - if not branch or "/" not in upstream: + upstream_branch = str(local.get("upstream_branch") or "") + if not branch or not upstream_branch: return False - _remote_name, upstream_branch = upstream.split("/", 1) return upstream_branch != branch @@ -436,7 +475,11 @@ def _worktrees(path: Path) -> list[dict[str, Any]]: if key == "worktree": current["path"] = value elif key == "HEAD": - current["head"] = value + current["head"] = ( + None + if len(value) in {40, 64} and value and set(value) == {"0"} + else value + ) elif key == "branch": current["branch"] = value.removeprefix("refs/heads/") elif key == "detached": diff --git a/src/portfolio_truth_contract_fixture.py b/src/portfolio_truth_contract_fixture.py new file mode 100644 index 00000000..679782fc --- /dev/null +++ b/src/portfolio_truth_contract_fixture.py @@ -0,0 +1,128 @@ +"""Deterministic PortfolioTruth fixture shared with PortfolioCommandCenter. + +The full public demo remains a rolling, portfolio-scale artifact. This smaller +fixture is the stable producer/consumer compatibility seam: it carries one row +for every receipt-backed security state and intentionally includes additive +fields that a compatible 0.x consumer must ignore. +""" + +from __future__ import annotations + +import hashlib +import json +from datetime import datetime, timedelta, timezone +from typing import Any + +from src.demo_portfolio import DEMO_PROJECTS, DemoProject, build_snapshot +from src.portfolio_truth_types import SCHEMA_VERSION + +CONTRACT_VERSION = "ghra-pcc-portfolio-truth.v1" +PRODUCER_REPOSITORY = "saagpatel/GithubRepoAuditor" +CONSUMER_REPOSITORY = "saagpatel/PortfolioCommandCenter" +FIXTURE_RELATIVE_PATH = ( + "fixtures/contracts/portfolio-command-center-v1/portfolio-truth.json" +) +MANIFEST_RELATIVE_PATH = ( + "fixtures/contracts/portfolio-command-center-v1/manifest.json" +) + +# Fixed-clock values make the bytes durable. Consumers evaluate freshness +# against EVALUATED_AT rather than wall time; runtime freshness behavior remains +# independently tested against its real clock. +GENERATED_AT = datetime(2026, 8, 1, 0, 0, tzinfo=timezone.utc) +EVALUATED_AT = GENERATED_AT + timedelta(hours=6) + +_PROJECT_CODENAMES = ( + "Dovetail Forge", # complete + "Kestrel Loom", # partial + "Quartz Signal", # stale + "Solstice Cairn", # unknown +) + + +def _contract_project_specs() -> tuple[DemoProject, ...]: + by_codename = {project.codename: project for project in DEMO_PROJECTS} + missing = [name for name in _PROJECT_CODENAMES if name not in by_codename] + if missing: + raise ValueError(f"Contract fixture project(s) missing: {missing}") + return tuple(by_codename[name] for name in _PROJECT_CODENAMES) + + +def build_contract_fixture() -> dict[str, Any]: + """Return the fixed-clock public-safe PortfolioTruth compatibility fixture.""" + fixture = build_snapshot( + GENERATED_AT, + project_specs=_contract_project_specs(), + ) + # This deterministic compatibility artifact is not emitted by an attested + # producer checkout. Canonical truth uses an empty object for absent + # evidence; partial synthetic evidence would be invalid and misleading. + fixture["producer"] = {} + fixture["contract_fixture"] = { + "contract_version": CONTRACT_VERSION, + "deterministic": True, + "producer_evidence": "absent", + "security_evidence_semantics": "synthetic-cross-receipt-state-matrix", + } + fixture["projects"][0]["additive_contract_canary"] = { + "consumer_behavior": "ignore-compatible-addition" + } + return fixture + + +def canonical_json_bytes(payload: dict[str, Any]) -> bytes: + """Serialize a contract artifact in the one canonical committed form.""" + rendered = json.dumps(payload, indent=2, sort_keys=True, ensure_ascii=False) + return f"{rendered}\n".encode() + + +def fixture_bytes() -> bytes: + return canonical_json_bytes(build_contract_fixture()) + + +def fixture_sha256() -> str: + return hashlib.sha256(fixture_bytes()).hexdigest() + + +def build_contract_manifest() -> dict[str, Any]: + """Describe the portable artifact without a self-referential Git commit. + + The consumer lock owns the immutable producer commit. Keeping the commit out + of this producer file avoids a hash that changes merely because it names + itself. + """ + return { + "contract_version": CONTRACT_VERSION, + "producer": { + "repository": PRODUCER_REPOSITORY, + "generator": ( + "src.portfolio_truth_contract_fixture:build_contract_fixture" + ), + "manifest_path": MANIFEST_RELATIVE_PATH, + "artifact_path": FIXTURE_RELATIVE_PATH, + "artifact_sha256": fixture_sha256(), + }, + "consumer": { + "repository": CONSUMER_REPOSITORY, + "compatibility_policy": "additive-0.x", + }, + "portfolio_truth_schema_version": SCHEMA_VERSION, + "fixture": { + "generated_at": GENERATED_AT.isoformat(), + "evaluation_time": EVALUATED_AT.isoformat(), + "project_count": len(_PROJECT_CODENAMES), + "coverage_states": ["complete", "partial", "stale", "unknown"], + "producer_evidence": "absent", + "security_evidence_semantics": ( + "synthetic-cross-receipt-state-matrix" + ), + "additive_canary_paths": [ + "contract_fixture", + "projects[0].additive_contract_canary", + ], + }, + } + + +def manifest_bytes() -> bytes: + return canonical_json_bytes(build_contract_manifest()) diff --git a/src/portfolio_truth_coverage.py b/src/portfolio_truth_coverage.py new file mode 100644 index 00000000..6241b915 --- /dev/null +++ b/src/portfolio_truth_coverage.py @@ -0,0 +1,189 @@ +"""Shared producer contract for PortfolioTruth coverage envelopes.""" + +from __future__ import annotations + +from collections.abc import Mapping, Sequence +from typing import Any + +from src.portfolio_truth_types import PortfolioTruthProject + +ProjectLike = PortfolioTruthProject | Mapping[str, Any] + + +def _section(project: ProjectLike, name: str) -> Any: + if isinstance(project, Mapping): + return project[name] + return getattr(project, name) + + +def _field(section: Any, name: str) -> Any: + if isinstance(section, Mapping): + return section.get(name) + return getattr(section, name) + + +def _provider_state(project: ProjectLike, provider: str) -> str: + security = _section(project, "security") + if not isinstance(security, Mapping): + return security.provider_state(provider) + provider_payload = security.get("providers", {}).get(provider, {}) + return str(provider_payload.get("state") or "unknown") + + +def _provider_zero_findings(project: ProjectLike, provider: str) -> bool: + security = _section(project, "security") + providers = ( + security.get("providers", {}) + if isinstance(security, Mapping) + else security.providers + ) + return (providers.get(provider) or {}).get("zero_findings") is True + + +def build_coverage_envelope( + *, + projects: Sequence[ProjectLike], + notion_context_carried_forward: bool, + notion_context_rows: int, +) -> list[dict[str, Any]]: + """Build the one canonical producer coverage envelope.""" + workspace_projects = [ + project + for project in projects + if not str(_field(_section(project, "identity"), "project_key")).startswith( + "supp:" + ) + ] + workspace_project_count = len(workspace_projects) + supplementary_project_count = len(projects) - workspace_project_count + complete = sum( + _field(_section(project, "security"), "coverage_state") == "complete" + for project in workspace_projects + ) + partial = sum( + _field(_section(project, "security"), "coverage_state") == "partial" + for project in workspace_projects + ) + stale = sum( + _field(_section(project, "security"), "coverage_state") == "stale" + for project in workspace_projects + ) + unknown = workspace_project_count - complete - partial - stale + cohort_count = sum( + _field(_section(project, "security"), "cohort_member") + for project in workspace_projects + ) + cohort_complete = sum( + _field(_section(project, "security"), "cohort_member") + and _field(_section(project, "security"), "coverage_state") == "complete" + for project in workspace_projects + ) + cohort_partial = sum( + _field(_section(project, "security"), "cohort_member") + and _field(_section(project, "security"), "coverage_state") == "partial" + for project in workspace_projects + ) + cohort_stale = sum( + _field(_section(project, "security"), "cohort_member") + and _field(_section(project, "security"), "coverage_state") == "stale" + for project in workspace_projects + ) + cohort_unknown = cohort_count - cohort_complete - cohort_partial - cohort_stale + provider_counts = { + provider: sum( + _provider_state(project, provider) == "observed" + for project in workspace_projects + ) + for provider in ("dependabot", "code_scanning", "secret_scanning") + } + provider_zero_finding_counts = { + provider: sum( + _provider_zero_findings(project, provider) + for project in workspace_projects + ) + for provider in ("dependabot", "code_scanning", "secret_scanning") + } + remote_default_branch_counts = { + state: sum( + ( + _section(project, "repository_state").get("remote_default_branch") + or {} + ).get("state") + == state + for project in workspace_projects + ) + for state in ( + "observed", + "partial", + "stale", + "credential_unavailable", + "forbidden", + "not_found", + "rate_limited", + "transient_error", + "malformed", + "not_requested", + "unknown", + ) + } + git_observed = sum( + _section(project, "repository_state").get("state") == "observed" + for project in workspace_projects + ) + coverage = [ + { + "source": "workspace", + "state": "observed", + "project_count": workspace_project_count, + }, + { + "source": "git", + "state": "observed" if git_observed else "unknown", + "observed_count": git_observed, + "project_count": workspace_project_count, + }, + { + "source": "github_security", + "state": ( + "known" + if complete == workspace_project_count + else "partial" + if complete or partial + else "unknown" + ), + "scanned_count": complete, + "complete_repo_count": complete, + "partial_repo_count": partial, + "stale_count": stale, + "unknown_count": unknown, + "cohort_repository_count": cohort_count, + "cohort_complete_count": cohort_complete, + "cohort_partial_count": cohort_partial, + "cohort_stale_count": cohort_stale, + "cohort_unknown_count": cohort_unknown, + "provider_observed_counts": provider_counts, + "provider_zero_finding_counts": provider_zero_finding_counts, + "remote_default_branch_counts": remote_default_branch_counts, + "project_count": workspace_project_count, + }, + { + "source": "notion", + "state": ( + "carried_forward" + if notion_context_carried_forward + else "observed" + if notion_context_rows + else "unknown" + ), + "observed_count": notion_context_rows, + }, + ] + if supplementary_project_count: + coverage.append( + { + "source": "supplementary_registry", + "state": "observed", + "project_count": supplementary_project_count, + } + ) + return coverage diff --git a/src/portfolio_truth_decisions.py b/src/portfolio_truth_decisions.py new file mode 100644 index 00000000..91ae7d28 --- /dev/null +++ b/src/portfolio_truth_decisions.py @@ -0,0 +1,102 @@ +"""Shared PortfolioTruth project risk and attention derivation.""" + +from __future__ import annotations + +from typing import Any + +from src.portfolio_risk import build_risk_entry + + +def derive_attention_state( + *, + activity_status: str, + archived: bool, + lifecycle_state: str, + operating_path: str, + category: str, + path_override: str, + risk_entry: dict[str, Any], +) -> str: + """Apply the production attention policy to already-normalized facts.""" + if archived or operating_path == "archive": + return "archived" + if operating_path == "experiment" or lifecycle_state == "experimental": + return "experiment" + if risk_entry.get("security_risk"): + return "decision-needed" + if lifecycle_state == "manual-only": + return "manual-only" + if lifecycle_state == "dormant": + return "parked" + if lifecycle_state == "active" and operating_path == "maintain": + if category == "infrastructure": + return "active-infra" + if category == "commercial": + return "active-product" + if activity_status == "stale": + return "decision-needed" if operating_path == "finish" else "parked" + if activity_status in {"active", "recent"} and operating_path in { + "maintain", + "finish", + }: + if category == "infrastructure": + return "active-infra" + if category == "commercial": + return "active-product" + return "manual-only" + if activity_status in {"active", "recent"}: + return "manual-only" + return "parked" + + +def build_project_decision( + *, + display_name: str, + operating_path: str, + path_override: str, + context_quality: str, + activity_status: str, + archived: bool, + lifecycle_state: str, + category: str, + criticality: str, + doctor_standard: str, + known_risks_present: bool, + run_instructions_present: bool, + security_coverage_state: str, + security_high_alerts: int = 0, + security_critical_alerts: int = 0, +) -> tuple[dict[str, Any], str]: + """Return the exact production risk envelope and attention decision.""" + risk_entry = build_risk_entry( + display_name=display_name, + operating_path=operating_path, + path_override=path_override, + context_quality=context_quality, + activity_status=activity_status, + archived=archived, + criticality=criticality, + doctor_standard=doctor_standard, + known_risks_present=known_risks_present, + run_instructions_present=run_instructions_present, + security_high_alerts=security_high_alerts, + security_critical_alerts=security_critical_alerts, + ) + if ( + security_coverage_state != "complete" + and risk_entry.get("risk_summary") == "No elevated risk factors." + ): + risk_entry["risk_summary"] = ( + "No non-security risk factors detected; GitHub security coverage is " + f"{security_coverage_state}." + ) + attention_state = derive_attention_state( + activity_status=activity_status, + archived=archived, + lifecycle_state=lifecycle_state, + operating_path=operating_path, + category=category, + path_override=path_override, + risk_entry=risk_entry, + ) + return risk_entry, attention_state diff --git a/src/portfolio_truth_metadata.py b/src/portfolio_truth_metadata.py new file mode 100644 index 00000000..a8129c86 --- /dev/null +++ b/src/portfolio_truth_metadata.py @@ -0,0 +1,216 @@ +"""Shared producer contracts for PortfolioTruth top-level metadata envelopes.""" + +from __future__ import annotations + +import hashlib +from collections import Counter +from collections.abc import Mapping, Sequence +from datetime import datetime, timezone +from pathlib import Path +from typing import Any + +from src.portfolio_truth_coverage import ProjectLike +from src.portfolio_truth_sources import WORKSPACE_DISCOVERY_POLICY_VERSION + + +def _section(project: ProjectLike, name: str) -> Any: + if isinstance(project, Mapping): + return project[name] + return getattr(project, name) + + +def _optional_section(project: ProjectLike, name: str) -> Any: + if isinstance(project, Mapping): + return project.get(name, {}) + return getattr(project, name, {}) + + +def _field(section: Any, name: str) -> Any: + if isinstance(section, Mapping): + return section.get(name) + return getattr(section, name) + + +def _has_path_catalog_contract(project: ProjectLike) -> bool: + identity = _section(project, "identity") + provenance = _optional_section(project, "provenance") + return any( + source.get("source") == "catalog_repo" + and source.get("detail") == _field(identity, "path") + for source in provenance.values() + if isinstance(source, Mapping) + ) + + +def duplicate_display_names(projects: Sequence[ProjectLike]) -> list[str]: + return sorted( + name + for name, count in Counter( + str(_field(_section(project, "identity"), "display_name")) + for project in projects + ).items() + if count > 1 + ) + + +def unresolved_duplicate_display_names( + projects: Sequence[ProjectLike], +) -> list[str]: + grouped: dict[str, list[ProjectLike]] = {} + for project in projects: + name = str(_field(_section(project, "identity"), "display_name")) + grouped.setdefault(name, []).append(project) + return sorted( + name + for name, members in grouped.items() + if len(members) > 1 + and any(not _has_path_catalog_contract(project) for project in members) + ) + + +def build_source_summary( + *, + workspace_root: str, + projects: Sequence[ProjectLike], + catalog_errors: Sequence[str], + catalog_warnings: Sequence[str], + legacy_registry_rows: int, + notion_context_rows: int, + notion_context_carried_forward: bool, +) -> dict[str, Any]: + """Build the exact producer summary from bounded inputs and project facts.""" + return { + "workspace_root": workspace_root, + "project_count": len(projects), + "catalog_errors": list(catalog_errors), + "catalog_warnings": list(catalog_warnings), + "legacy_registry_rows": legacy_registry_rows, + "notion_context_rows": notion_context_rows, + "notion_context_carried_forward": notion_context_carried_forward, + "context_quality_counts": dict( + Counter( + _field(_section(project, "derived"), "context_quality") + for project in projects + ) + ), + "activity_status_counts": dict( + Counter( + _field(_section(project, "derived"), "activity_status") + for project in projects + ) + ), + "archived_count": sum( + _field(_section(project, "derived"), "archived") + for project in projects + ), + "attention_state_counts": dict( + Counter( + _field(_section(project, "derived"), "attention_state") + for project in projects + ) + ), + "github_archived_count": sum( + ( + _optional_section(project, "provenance") + .get("github.archived", {}) + .get("detail") + == "true" + ) + for project in projects + ), + "duplicate_display_names": duplicate_display_names(projects), + "unresolved_duplicate_display_names": unresolved_duplicate_display_names( + projects + ), + } + + +def build_warnings( + *, + catalog_errors: Sequence[str], + catalog_warnings: Sequence[str], + unresolved_duplicates: Sequence[str], +) -> list[str]: + warnings = [*catalog_errors, *catalog_warnings] + if unresolved_duplicates: + warnings.append( + "Duplicate project display names require path-qualified registry labels: " + + ", ".join(unresolved_duplicates) + ) + return warnings + + +def build_input_envelope( + *, + workspace_root: str, + catalog_path: str | Path | None, + now: datetime, + include_notion: bool, + notion_context_rows: int, + notion_context_carried_forward: bool, + prior_notion_generated_at: str | None, + notion_source_mode: str, + notion_observed_at: str | None, + security_coverage_metadata: Mapping[str, Any] | None, +) -> dict[str, Any]: + resolved_catalog = Path(str(catalog_path or "")) + catalog_hash = ( + hashlib.sha256(resolved_catalog.read_bytes()).hexdigest() + if resolved_catalog.is_file() + else None + ) + if not include_notion or notion_context_rows == 0: + notion_mode = "unavailable" + notion_observed_at = None + elif notion_context_carried_forward: + notion_mode = "carried-forward" if prior_notion_generated_at else "unavailable" + notion_observed_at = prior_notion_generated_at + else: + notion_mode = notion_source_mode + notion_observed_at = notion_observed_at or now.isoformat() + inputs = { + "catalog": { + "source_id": "portfolio-catalog", + "sha256": catalog_hash, + "observed_at": now.isoformat(), + }, + "workspace": { + "source_id": "projects-root", + "observed_at": now.isoformat(), + }, + "notion": { + "mode": notion_mode, + "observed_at": notion_observed_at, + "carried_from_generated_at": ( + prior_notion_generated_at if notion_context_carried_forward else None + ), + }, + } + if security_coverage_metadata: + github_security = dict(security_coverage_metadata) + produced_at = github_security.get("produced_at") + if isinstance(produced_at, str): + try: + parsed_produced_at = datetime.fromisoformat( + produced_at.replace("Z", "+00:00") + ) + except ValueError: + pass + else: + if parsed_produced_at.tzinfo is not None: + raw_age_hours = ( + now.astimezone(timezone.utc) + - parsed_produced_at.astimezone(timezone.utc) + ).total_seconds() / 3600 + github_security["age_hours"] = round( + max(raw_age_hours, 0.0), 3 + ) + inputs["github_security"] = github_security + return inputs + + +def build_exclusions(counts: Mapping[str, int]) -> dict[str, Any]: + return { + "policy_version": WORKSPACE_DISCOVERY_POLICY_VERSION, + "counts": dict(sorted(counts.items())), + } diff --git a/src/portfolio_truth_precedence.py b/src/portfolio_truth_precedence.py new file mode 100644 index 00000000..a365bb11 --- /dev/null +++ b/src/portfolio_truth_precedence.py @@ -0,0 +1,57 @@ +"""Canonical field-level authority order for PortfolioTruth producers.""" + +from __future__ import annotations + +PRECEDENCE_MATRIX: dict[str, list[str]] = { + "declared.owner": ["catalog_repo", "catalog_group"], + "declared.team": ["catalog_repo", "catalog_group"], + "declared.purpose": ["catalog_repo", "catalog_group"], + "declared.lifecycle_state": ["catalog_repo", "catalog_group"], + "declared.criticality": ["catalog_repo", "catalog_group"], + "declared.review_cadence": ["catalog_repo", "catalog_group"], + "declared.intended_disposition": ["catalog_repo", "catalog_group"], + "declared.maturity_program": [ + "catalog_repo", + "catalog_group", + "catalog_defaults", + ], + "declared.target_maturity": [ + "catalog_repo", + "catalog_group", + "catalog_defaults", + ], + "declared.operating_path": ["normalized"], + "declared.category": ["catalog_repo", "catalog_group", "legacy_registry"], + "declared.tool_provenance": [ + "catalog_repo", + "catalog_group", + "inference", + "legacy_registry", + ], + "declared.notes": ["catalog_repo", "catalog_group", "legacy_registry"], + "derived.stack": ["workspace", "legacy_registry"], + "derived.context_quality": ["workspace", "catalog_repo", "catalog_group"], + "derived.context_files": ["workspace"], + "derived.primary_context_file": ["workspace"], + "derived.project_summary_present": ["workspace"], + "derived.current_state_present": ["workspace"], + "derived.stack_present": ["workspace"], + "derived.run_instructions_present": ["workspace"], + "derived.known_risks_present": ["workspace"], + "derived.next_recommended_move_present": ["workspace"], + "derived.last_meaningful_activity_at": ["git", "workspace"], + "derived.activity_status": ["derived"], + "derived.archived": ["derived"], + "derived.attention_state": ["derived"], + "derived.path_override": ["normalized"], + "derived.path_confidence": ["normalized"], + "derived.path_rationale": ["normalized"], + "derived.has_tests": ["workspace"], + "derived.has_ci": ["workspace"], + "derived.readme_char_count": ["workspace"], +} + + +def build_precedence_matrix() -> dict[str, list[str]]: + """Return an independent serializable copy of the authority contract.""" + return {field: list(sources) for field, sources in PRECEDENCE_MATRIX.items()} diff --git a/src/portfolio_truth_provenance.py b/src/portfolio_truth_provenance.py new file mode 100644 index 00000000..adc49839 --- /dev/null +++ b/src/portfolio_truth_provenance.py @@ -0,0 +1,43 @@ +from __future__ import annotations + + +# Every project built by the production reconciler records these provenance +# entries. Portable fixtures must carry the same minimum contract so consumers +# never mistake an untraceable synthetic row for production-shaped truth. +REQUIRED_PROJECT_PROVENANCE_KEYS = frozenset( + { + "declared.category", + "declared.criticality", + "declared.doctor_standard", + "declared.intended_disposition", + "declared.lifecycle_state", + "declared.maturity_program", + "declared.notes", + "declared.operating_path", + "declared.owner", + "declared.purpose", + "declared.review_cadence", + "declared.target_maturity", + "declared.team", + "declared.tool_provenance", + "derived.activity_status", + "derived.archived", + "derived.attention_state", + "derived.context_files", + "derived.context_quality", + "derived.current_state_present", + "derived.known_risks_present", + "derived.last_meaningful_activity_at", + "derived.next_recommended_move_present", + "derived.path_confidence", + "derived.path_override", + "derived.path_rationale", + "derived.primary_context_file", + "derived.project_summary_present", + "derived.run_instructions_present", + "derived.stack", + "derived.stack_present", + "risk.doctor_gap", + "risk.risk_tier", + } +) diff --git a/src/portfolio_truth_publish.py b/src/portfolio_truth_publish.py index 9b7f66c7..036a996d 100644 --- a/src/portfolio_truth_publish.py +++ b/src/portfolio_truth_publish.py @@ -4,6 +4,7 @@ import tempfile from contextlib import nullcontext from dataclasses import dataclass +from datetime import datetime from pathlib import Path from src.github_security_coverage import ( @@ -102,7 +103,15 @@ def publish_portfolio_truth( producer_evidence: ProducerEvidence | None = None, producer_repo_root: Path | None = None, require_producer_evidence: bool = False, + now: datetime | None = None, ) -> PortfolioTruthPublishResult: + if ( + security_coverage_metadata is not None + or security_receipt_binding is not None + ) and now is None: + raise PortfolioTruthPublishError( + "Receipt-backed security publication requires an explicit evaluation clock." + ) if require_producer_evidence and producer_evidence is None: raise PortfolioTruthPublishError( "Canonical publication requires validated producer evidence." @@ -148,8 +157,16 @@ def publish_portfolio_truth( repo_status_by_name=repo_status_by_name, producer=producer_evidence.to_dict() if producer_evidence else {}, prior_notion_generated_at=prior_notion_generated_at, + now=now, + ) + validate_truth_snapshot( + build_result.snapshot, + security_max_age_hours=( + security_receipt_binding.max_age_hours + if security_receipt_binding is not None + else 24 + ), ) - validate_truth_snapshot(build_result.snapshot) snapshot_stamp = build_result.snapshot.generated_at.strftime("%Y-%m-%dT%H%M%SZ") snapshot_path = output_dir / f"portfolio-truth-{snapshot_stamp}.json" @@ -197,15 +214,24 @@ def publish_portfolio_truth( originals = {path: (path.read_text() if path.exists() else None) for path in targets} published: list[Path] = [] + # This live guard is intentionally separate from the snapshot's shared + # evaluation clock: it catches receipt replacement or expiry before writes. publication_guard = ( verified_security_coverage_receipt_binding(security_receipt_binding) if security_receipt_binding is not None else nullcontext() ) try: - with publication_guard: - if producer_evidence is not None and producer_repo_root is not None: - verify_evidence_still_current(producer_repo_root, producer_evidence) + if producer_evidence is not None and producer_repo_root is not None: + verify_evidence_still_current(producer_repo_root, producer_evidence) + with publication_guard as live_security: + if ( + live_security is not None + and live_security.entries_by_full_name != security_alerts_by_name + ): + raise PortfolioTruthPublishError( + "Security receipt normalized evidence changed after it was loaded." + ) for path, staged in temp_files.items(): if path in {registry_output, portfolio_report_output} and not changed[path]: staged.unlink(missing_ok=True) diff --git a/src/portfolio_truth_reconcile.py b/src/portfolio_truth_reconcile.py index 45e2b3de..7f042c29 100644 --- a/src/portfolio_truth_reconcile.py +++ b/src/portfolio_truth_reconcile.py @@ -3,8 +3,6 @@ import json import logging import re -import hashlib -from collections import Counter from dataclasses import dataclass, replace from datetime import datetime, timezone from pathlib import Path @@ -17,10 +15,17 @@ ) from src.portfolio_context_contract import has_substantive_readme_support from src.portfolio_pathing import build_operating_path_entry -from src.portfolio_risk import build_risk_entry from src.portfolio_repository_state import observe_repository_state +from src.portfolio_truth_coverage import build_coverage_envelope +from src.portfolio_truth_decisions import build_project_decision +from src.portfolio_truth_metadata import ( + build_exclusions, + build_input_envelope, + build_source_summary, + build_warnings, +) +from src.portfolio_truth_precedence import build_precedence_matrix from src.portfolio_truth_sources import ( - WORKSPACE_DISCOVERY_POLICY_VERSION, discover_workspace_projects, load_legacy_registry_rows, load_safe_notion_project_context, @@ -43,47 +48,6 @@ logger = logging.getLogger(__name__) -PRECEDENCE_MATRIX: dict[str, list[str]] = { - "declared.owner": ["catalog_repo", "catalog_group"], - "declared.team": ["catalog_repo", "catalog_group"], - "declared.purpose": ["catalog_repo", "catalog_group"], - "declared.lifecycle_state": ["catalog_repo", "catalog_group"], - "declared.criticality": ["catalog_repo", "catalog_group"], - "declared.review_cadence": ["catalog_repo", "catalog_group"], - "declared.intended_disposition": ["catalog_repo", "catalog_group"], - "declared.maturity_program": ["catalog_repo", "catalog_group", "catalog_defaults"], - "declared.target_maturity": ["catalog_repo", "catalog_group", "catalog_defaults"], - "declared.operating_path": ["normalized"], - "declared.category": ["catalog_repo", "catalog_group", "legacy_registry"], - "declared.tool_provenance": [ - "catalog_repo", - "catalog_group", - "inference", - "legacy_registry", - ], - "declared.notes": ["catalog_repo", "catalog_group", "legacy_registry"], - "derived.stack": ["workspace", "legacy_registry"], - "derived.context_quality": ["workspace", "catalog_repo", "catalog_group"], - "derived.context_files": ["workspace"], - "derived.primary_context_file": ["workspace"], - "derived.project_summary_present": ["workspace"], - "derived.current_state_present": ["workspace"], - "derived.stack_present": ["workspace"], - "derived.run_instructions_present": ["workspace"], - "derived.known_risks_present": ["workspace"], - "derived.next_recommended_move_present": ["workspace"], - "derived.last_meaningful_activity_at": ["git", "workspace"], - "derived.activity_status": ["derived"], - "derived.archived": ["derived"], - "derived.attention_state": ["derived"], - "derived.path_override": ["normalized"], - "derived.path_confidence": ["normalized"], - "derived.path_rationale": ["normalized"], - "derived.has_tests": ["workspace"], - "derived.has_ci": ["workspace"], - "derived.readme_char_count": ["workspace"], -} - # ── Strict signal constants (mirror src/analyzers/testing.py and cicd.py) ── _TEST_DIRS = frozenset(("test", "tests", "__tests__", "spec", "test_suite")) _TEST_PATTERNS = ( @@ -296,57 +260,34 @@ def build_portfolio_truth_snapshot( ) ) - source_summary = { - "workspace_root": workspace_root.as_posix(), - "project_count": len(projects), - "catalog_errors": list(catalog_data.get("errors") or []), - "catalog_warnings": list(catalog_data.get("warnings") or []), - "legacy_registry_rows": len(legacy_rows), - "notion_context_rows": len(notion_context), - "notion_context_carried_forward": notion_context_carried_forward, - "context_quality_counts": dict( - Counter(project.derived.context_quality for project in projects) - ), - "activity_status_counts": dict( - Counter(project.derived.activity_status for project in projects) - ), - "archived_count": sum(1 for project in projects if project.derived.archived), - "attention_state_counts": dict( - Counter(project.derived.attention_state for project in projects) - ), - "github_archived_count": sum( - 1 - for project in projects - if project.provenance.get("github.archived", {}).get("detail") == "true" - ), - "duplicate_display_names": _duplicate_display_names(projects), - "unresolved_duplicate_display_names": _unresolved_duplicate_display_names( - projects - ), - } - warnings = list(catalog_data.get("errors") or []) + list( - catalog_data.get("warnings") or [] + source_summary = build_source_summary( + workspace_root=workspace_root.as_posix(), + projects=projects, + catalog_errors=list(catalog_data.get("errors") or []), + catalog_warnings=list(catalog_data.get("warnings") or []), + legacy_registry_rows=len(legacy_rows), + notion_context_rows=len(notion_context), + notion_context_carried_forward=notion_context_carried_forward, + ) + warnings = build_warnings( + catalog_errors=source_summary["catalog_errors"], + catalog_warnings=source_summary["catalog_warnings"], + unresolved_duplicates=source_summary["unresolved_duplicate_display_names"], ) - duplicate_display_names = source_summary["unresolved_duplicate_display_names"] - if duplicate_display_names: - warnings.append( - "Duplicate project display names require path-qualified registry labels: " - + ", ".join(duplicate_display_names) - ) snapshot = PortfolioTruthSnapshot( schema_version=SCHEMA_VERSION, generated_at=now, workspace_root=workspace_root.as_posix(), source_summary=source_summary, - precedence_matrix=PRECEDENCE_MATRIX, + precedence_matrix=build_precedence_matrix(), warnings=warnings, projects=projects, derivation_policy_version=DERIVATION_POLICY_VERSION, producer=producer or {}, - inputs=_build_input_envelope( - workspace_root=workspace_root, - catalog_data=catalog_data, + inputs=build_input_envelope( + workspace_root=workspace_root.as_posix(), + catalog_path=catalog_data.get("path"), now=now, include_notion=include_notion, notion_context_rows=len(notion_context), @@ -356,15 +297,12 @@ def build_portfolio_truth_snapshot( notion_observed_at=notion_observed_at, security_coverage_metadata=security_coverage_metadata, ), - coverage=_build_coverage_envelope( + coverage=build_coverage_envelope( projects=projects, notion_context_carried_forward=notion_context_carried_forward, notion_context_rows=len(notion_context), ), - exclusions={ - "policy_version": WORKSPACE_DISCOVERY_POLICY_VERSION, - "counts": dict(sorted(exclusion_counts.items())), - }, + exclusions=build_exclusions(exclusion_counts), ) return PortfolioTruthBuildResult( snapshot=snapshot, catalog_data=catalog_data, legacy_rows=legacy_rows @@ -470,190 +408,6 @@ def _merge_supplementary_discoveries( return merged -def _build_coverage_envelope( - *, - projects: list[PortfolioTruthProject], - notion_context_carried_forward: bool, - notion_context_rows: int, -) -> list[dict[str, Any]]: - workspace_projects = [ - project - for project in projects - if not project.identity.project_key.startswith("supp:") - ] - workspace_project_count = len(workspace_projects) - supplementary_project_count = len(projects) - workspace_project_count - complete = sum( - project.security.coverage_state == "complete" for project in workspace_projects - ) - partial = sum( - project.security.coverage_state == "partial" for project in workspace_projects - ) - stale = sum( - project.security.coverage_state == "stale" for project in workspace_projects - ) - unknown = workspace_project_count - complete - partial - stale - cohort_count = sum(project.security.cohort_member for project in workspace_projects) - cohort_complete = sum( - project.security.cohort_member and project.security.coverage_state == "complete" - for project in workspace_projects - ) - cohort_partial = sum( - project.security.cohort_member and project.security.coverage_state == "partial" - for project in workspace_projects - ) - cohort_stale = sum( - project.security.cohort_member and project.security.coverage_state == "stale" - for project in workspace_projects - ) - cohort_unknown = cohort_count - cohort_complete - cohort_partial - cohort_stale - provider_counts = { - provider: sum( - project.security.provider_state(provider) == "observed" - for project in workspace_projects - ) - for provider in ("dependabot", "code_scanning", "secret_scanning") - } - provider_zero_finding_counts = { - provider: sum( - (project.security.providers.get(provider) or {}).get("zero_findings") - is True - for project in workspace_projects - ) - for provider in ("dependabot", "code_scanning", "secret_scanning") - } - remote_default_branch_counts = { - state: sum( - (project.repository_state.get("remote_default_branch") or {}).get("state") - == state - for project in workspace_projects - ) - for state in ( - "observed", - "partial", - "stale", - "credential_unavailable", - "forbidden", - "not_found", - "rate_limited", - "transient_error", - "malformed", - "not_requested", - "unknown", - ) - } - git_observed = sum( - project.repository_state.get("state") == "observed" - for project in workspace_projects - ) - coverage = [ - { - "source": "workspace", - "state": "observed", - "project_count": workspace_project_count, - }, - { - "source": "git", - "state": "observed" if git_observed else "unknown", - "observed_count": git_observed, - "project_count": workspace_project_count, - }, - { - "source": "github_security", - "state": ( - "known" - if complete == workspace_project_count - else "partial" - if complete or partial - else "unknown" - ), - "scanned_count": complete, - "complete_repo_count": complete, - "partial_repo_count": partial, - "stale_count": stale, - "unknown_count": unknown, - "cohort_repository_count": cohort_count, - "cohort_complete_count": cohort_complete, - "cohort_partial_count": cohort_partial, - "cohort_stale_count": cohort_stale, - "cohort_unknown_count": cohort_unknown, - "provider_observed_counts": provider_counts, - "provider_zero_finding_counts": provider_zero_finding_counts, - "remote_default_branch_counts": remote_default_branch_counts, - "project_count": workspace_project_count, - }, - { - "source": "notion", - "state": "carried_forward" - if notion_context_carried_forward - else "observed" - if notion_context_rows - else "unknown", - "observed_count": notion_context_rows, - }, - ] - if supplementary_project_count: - coverage.append( - { - "source": "supplementary_registry", - "state": "observed", - "project_count": supplementary_project_count, - } - ) - return coverage - - -def _build_input_envelope( - *, - workspace_root: Path, - catalog_data: dict[str, Any], - now: datetime, - include_notion: bool, - notion_context_rows: int, - notion_context_carried_forward: bool, - prior_notion_generated_at: str | None, - notion_source_mode: str, - notion_observed_at: str | None, - security_coverage_metadata: dict[str, Any] | None, -) -> dict[str, Any]: - resolved_catalog = Path(str(catalog_data.get("path") or "")) - catalog_hash = ( - hashlib.sha256(resolved_catalog.read_bytes()).hexdigest() - if resolved_catalog.is_file() - else None - ) - if not include_notion or notion_context_rows == 0: - notion_mode = "unavailable" - notion_observed_at = None - elif notion_context_carried_forward: - notion_mode = "carried-forward" if prior_notion_generated_at else "unavailable" - notion_observed_at = prior_notion_generated_at - else: - notion_mode = notion_source_mode - notion_observed_at = notion_observed_at or now.isoformat() - inputs = { - "catalog": { - "source_id": "portfolio-catalog", - "sha256": catalog_hash, - "observed_at": now.isoformat(), - }, - "workspace": { - "source_id": "projects-root", - "observed_at": now.isoformat(), - }, - "notion": { - "mode": notion_mode, - "observed_at": notion_observed_at, - "carried_from_generated_at": ( - prior_notion_generated_at if notion_context_carried_forward else None - ), - }, - } - if security_coverage_metadata: - inputs["github_security"] = dict(security_coverage_metadata) - return inputs - - def load_prior_notion_context(latest_path: Path) -> dict[str, dict[str, str]]: """Reconstruct a Notion project-context map from a previously published portfolio-truth artifact, keyed identically to live Notion context @@ -694,40 +448,6 @@ def load_prior_notion_context(latest_path: Path) -> dict[str, dict[str, str]]: return context -def _duplicate_display_names(projects: list[PortfolioTruthProject]) -> list[str]: - return sorted( - name - for name, count in Counter( - project.identity.display_name for project in projects - ).items() - if count > 1 - ) - - -def _unresolved_duplicate_display_names( - projects: list[PortfolioTruthProject], -) -> list[str]: - grouped: dict[str, list[PortfolioTruthProject]] = {} - for project in projects: - grouped.setdefault(project.identity.display_name, []).append(project) - return sorted( - name - for name, members in grouped.items() - if len(members) > 1 - and any(not _has_path_catalog_contract(project) for project in members) - ) - - -def _has_path_catalog_contract(project: PortfolioTruthProject) -> bool: - for source in project.provenance.values(): - if ( - source.get("source") == "catalog_repo" - and source.get("detail") == project.identity.path - ): - return True - return False - - def _build_security_fields(ghas_entry: dict[str, Any] | None) -> SecurityFields: """Map a validated receipt entry into provider-specific security fields. @@ -1037,37 +757,23 @@ def _build_truth_project( # Only Dependabot high/critical counts drive the risk tier today. Code-scanning # and secret-scanning counts are captured in SecurityFields for visibility but do # not yet feed the active-high-severity-alerts factor (Dependabot-only scope). - risk_entry = build_risk_entry( + risk_entry, attention_state = build_project_decision( display_name=raw_project["name"], operating_path=path_entry.get("operating_path", ""), path_override=path_entry.get("path_override", ""), context_quality=context_quality, activity_status=activity_status, archived=archived, + lifecycle_state=declared_values["lifecycle_state"], + category=declared_values["category"], criticality=declared_values["criticality"], doctor_standard=declared_values["doctor_standard"], known_risks_present=bool(raw_project["known_risks_present"]), run_instructions_present=bool(raw_project["run_instructions_present"]), + security_coverage_state=security.coverage_state, security_high_alerts=security.dependabot_high or 0, security_critical_alerts=security.dependabot_critical or 0, ) - if ( - security.coverage_state != "complete" - and risk_entry.get("risk_summary") == "No elevated risk factors." - ): - risk_entry["risk_summary"] = ( - "No non-security risk factors detected; GitHub security coverage is " - f"{security.coverage_state}." - ) - attention_state = _attention_state_for( - activity_status=activity_status, - archived=archived, - lifecycle_state=declared_values["lifecycle_state"], - operating_path=path_entry.get("operating_path", ""), - category=declared_values["category"], - path_override=path_entry.get("path_override", ""), - risk_entry=risk_entry, - ) if not security.receipt_schema_version and attention_state in { "active-product", "active-infra", @@ -1459,48 +1165,3 @@ def _activity_status_for(last_activity: datetime | None, *, now: datetime) -> st if delta_days <= 30: return "recent" return "stale" - - -def _attention_state_for( - *, - activity_status: str, - archived: bool, - lifecycle_state: str, - operating_path: str, - category: str, - path_override: str, - risk_entry: dict[str, Any], -) -> str: - if archived or operating_path == "archive": - return "archived" - if operating_path == "experiment" or lifecycle_state == "experimental": - return "experiment" - if risk_entry.get("security_risk"): - return "decision-needed" - if lifecycle_state == "manual-only": - return "manual-only" - if lifecycle_state == "dormant": - return "parked" - if lifecycle_state == "active" and operating_path == "maintain": - if category == "infrastructure": - return "active-infra" - if category == "commercial": - return "active-product" - if activity_status == "stale": - # A declared finish path is itself an unresolved operator decision. It can - # remain valid while the default branch is stale (for example, when work is - # on a release branch or waiting at a human/publication gate), so do not - # silently collapse it back into the parked pool. - return "decision-needed" if operating_path == "finish" else "parked" - if activity_status in {"active", "recent"} and operating_path in { - "maintain", - "finish", - }: - if category == "infrastructure": - return "active-infra" - if category == "commercial": - return "active-product" - return "manual-only" - if activity_status in {"active", "recent"}: - return "manual-only" - return "parked" diff --git a/src/portfolio_truth_sources.py b/src/portfolio_truth_sources.py index 684424e5..3c78a11d 100644 --- a/src/portfolio_truth_sources.py +++ b/src/portfolio_truth_sources.py @@ -107,6 +107,19 @@ WORKSPACE_DISCOVERY_POLICY_VERSION = "workspace_discovery.v2" +WORKSPACE_EXCLUSION_REASONS = frozenset( + { + "backup-container", + "generated-evidence", + "generated-reports", + "linked-worktree-container", + "nested-content", + "operator-excluded", + "preserved-artifacts", + "scratch-container", + "temporary-checkout", + } +) MAX_NOTION_SNAPSHOT_AGE_HOURS = 30 diff --git a/src/portfolio_truth_validate.py b/src/portfolio_truth_validate.py index e192f418..e08b685f 100644 --- a/src/portfolio_truth_validate.py +++ b/src/portfolio_truth_validate.py @@ -1,30 +1,80 @@ from __future__ import annotations import re +from collections.abc import Mapping +from copy import deepcopy +from dataclasses import fields, is_dataclass +from datetime import datetime from pathlib import Path +from types import UnionType +from typing import Any, Union, get_args, get_origin, get_type_hints +from src.github_security_coverage import ( + DEFAULT_COHORT_POLICY, + GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION, + PROVIDER_NAMES, + SecurityCoverageError, + _valid_git_branch, + _valid_git_oid, + _valid_git_upstream, + _validate_remote_repository, + validate_normalized_security_provider, +) from src.portfolio_pathing import ( VALID_MATURITY_PROGRAMS, VALID_OPERATING_PATHS, VALID_PATH_CONFIDENCE, VALID_PATH_OVERRIDES, ) +from src.portfolio_repository_state import ( + _local_from_worktree, + _select_remote_default_worktree, + _selected_worktree, + _tracks_nonmatching_branch, +) +from src.portfolio_truth_coverage import build_coverage_envelope +from src.portfolio_truth_decisions import build_project_decision +from src.portfolio_truth_metadata import ( + build_exclusions, + build_source_summary, + build_warnings, +) +from src.portfolio_truth_precedence import PRECEDENCE_MATRIX +from src.portfolio_truth_provenance import REQUIRED_PROJECT_PROVENANCE_KEYS from src.portfolio_truth_render import registry_project_labels +from src.portfolio_truth_sources import WORKSPACE_EXCLUSION_REASONS from src.portfolio_truth_types import ( DERIVATION_POLICY_VERSION, SCHEMA_VERSION, VALID_ACTIVITY_STATUS, VALID_ATTENTION_STATES, + VALID_CATEGORY_TAGS, VALID_CONTEXT_QUALITY, VALID_DOCTOR_STANDARDS, VALID_LIFECYCLE_STATES, VALID_RISK_TIERS, + AdvisoryFields, + DeclaredFields, + DerivedFields, + IdentityFields, PortfolioTruthSnapshot, + PortfolioTruthProject, + RiskFields, + SecurityFields, ) +from src.producer_preflight import ProducerEvidence from src.registry_parser import _normalize, parse_registry -def validate_truth_snapshot(snapshot: PortfolioTruthSnapshot) -> None: +def validate_truth_snapshot( + snapshot: PortfolioTruthSnapshot, + *, + security_max_age_hours: int = 24, + allow_synthetic_security_matrix: bool = False, +) -> None: + if security_max_age_hours <= 0: + raise ValueError("Security max age hours must be positive.") + _validate_runtime_dataclass(snapshot, "snapshot") if snapshot.schema_version != SCHEMA_VERSION: raise ValueError(f"Unexpected schema version: {snapshot.schema_version}") if snapshot.derivation_policy_version != DERIVATION_POLICY_VERSION: @@ -32,7 +82,18 @@ def validate_truth_snapshot(snapshot: PortfolioTruthSnapshot) -> None: "Unexpected derivation policy version: " f"{snapshot.derivation_policy_version}" ) - _validate_contract_envelope(snapshot) + _validate_contract_envelope(snapshot.to_dict()) + expected_order = sorted( + snapshot.projects, + key=lambda project: ( + project.identity.section_marker.lower(), + project.identity.display_name.lower(), + ), + ) + if [project.identity.project_key for project in snapshot.projects] != [ + project.identity.project_key for project in expected_order + ]: + raise ValueError("PortfolioTruth projects differ from producer ordering.") seen_keys: set[str] = set() for project in snapshot.projects: key = project.identity.project_key @@ -43,6 +104,54 @@ def validate_truth_snapshot(snapshot: PortfolioTruthSnapshot) -> None: raise ValueError( f"Project path must stay workspace-relative: {project.identity.path}" ) + if project.identity.project_key != project.identity.path: + raise ValueError( + f"Project key for {key} must exactly match its identity path." + ) + required_identity = ( + project.identity.project_key, + project.identity.display_name, + project.identity.path, + project.identity.top_level_dir, + project.identity.group_key, + project.identity.group_label, + project.identity.section_marker, + project.identity.section_label, + ) + if any(not value.strip() for value in required_identity): + raise ValueError(f"Project identity for {key!r} has empty required fields.") + if not isinstance(project.warnings, list) or any( + not isinstance(value, str) for value in project.warnings + ): + raise ValueError(f"Project warnings for {key} must be strings.") + if not isinstance(project.provenance, dict) or any( + not isinstance(field_name, str) + or not field_name + or not isinstance(source, Mapping) + or set(source) != {"source", "detail"} + or not isinstance(source.get("source"), str) + or not isinstance(source.get("detail"), str) + for field_name, source in project.provenance.items() + ): + raise ValueError(f"Project provenance for {key} is invalid.") + missing_provenance = sorted( + REQUIRED_PROJECT_PROVENANCE_KEYS - project.provenance.keys() + ) + if missing_provenance: + raise ValueError( + f"Project provenance for {key} is missing required fields: " + f"{missing_provenance}" + ) + empty_sources = sorted( + field_name + for field_name in REQUIRED_PROJECT_PROVENANCE_KEYS + if not project.provenance[field_name]["source"].strip() + ) + if empty_sources: + raise ValueError( + f"Project provenance for {key} has empty required sources: " + f"{empty_sources}" + ) if project.derived.context_quality not in VALID_CONTEXT_QUALITY: raise ValueError( f"Invalid context quality for {key}: {project.derived.context_quality}" @@ -59,6 +168,24 @@ def validate_truth_snapshot(snapshot: PortfolioTruthSnapshot) -> None: raise ValueError( f"Invalid attention state for {key}: {project.derived.attention_state}" ) + category = project.declared.category + if category and category not in VALID_CATEGORY_TAGS: + raise ValueError(f"Invalid category for {key}: {category}") + if ( + project.derived.attention_state == "active-infra" + and category != "infrastructure" + ): + raise ValueError( + f"Active infrastructure attention for {key} requires the " + "infrastructure category." + ) + if ( + project.derived.attention_state == "active-product" + and category != "commercial" + ): + raise ValueError( + f"Active product attention for {key} requires the commercial category." + ) completeness_flags = ( project.derived.project_summary_present, project.derived.current_state_present, @@ -96,13 +223,1597 @@ def validate_truth_snapshot(snapshot: PortfolioTruthSnapshot) -> None: doctor_std = project.declared.doctor_standard if doctor_std and doctor_std not in VALID_DOCTOR_STANDARDS: raise ValueError(f"Invalid doctor standard for {key}: {doctor_std}") + if not isinstance(project.identity.has_git, bool): + raise ValueError(f"Identity has_git for {key} must be boolean.") + if ( + project.identity.has_git is False + and project.repository_state.get("state") != "not_a_repository" + ): + raise ValueError( + f"Non-Git identity for {key} must have not_a_repository state." + ) + _validate_security_fields( + project.security, + key, + snapshot.generated_at, + security_max_age_hours, + ) + _validate_repository_state( + project.repository_state, + project.security, + key, + snapshot.generated_at, + security_max_age_hours, + ) + expected_risk, expected_attention = build_project_decision( + display_name=project.identity.display_name, + operating_path=project.declared.operating_path, + path_override=project.derived.path_override, + context_quality=project.derived.context_quality, + activity_status=project.derived.activity_status, + archived=project.derived.archived, + lifecycle_state=project.declared.lifecycle_state, + category=project.declared.category, + criticality=project.declared.criticality, + doctor_standard=project.declared.doctor_standard, + known_risks_present=project.derived.known_risks_present, + run_instructions_present=project.derived.run_instructions_present, + security_coverage_state=project.security.coverage_state, + security_high_alerts=project.security.dependabot_high or 0, + security_critical_alerts=project.security.dependabot_critical or 0, + ) + if project.risk.to_dict() != expected_risk: + raise ValueError( + f"Project risk for {key} differs from production derivation." + ) + if project.derived.attention_state != expected_attention: + raise ValueError( + f"Project attention for {key} differs from production derivation." + ) + + notion_context_rows, notion_context_carried_forward = _validate_snapshot_metadata( + snapshot, + security_max_age_hours=security_max_age_hours, + allow_synthetic_security_matrix=allow_synthetic_security_matrix, + ) + expected_coverage = build_coverage_envelope( + projects=snapshot.projects, + notion_context_carried_forward=notion_context_carried_forward, + notion_context_rows=notion_context_rows, + ) + if snapshot.coverage != expected_coverage: + raise ValueError("PortfolioTruth coverage differs from the producer envelope.") + + +def _validate_runtime_dataclass(value: object, path: str) -> None: + """Recursively enforce postponed dataclass annotations at runtime.""" + hints = get_type_hints(type(value)) + for field in fields(value): + _validate_runtime_value( + getattr(value, field.name), + hints[field.name], + f"{path}.{field.name}", + ) + if isinstance(value, DerivedFields): + if value.context_file_count != len(value.context_files): + raise ValueError( + f"Portfolio truth {path}.context_file_count differs from context_files." + ) + if value.readme_char_count < 0 or ( + value.release_count is not None and value.release_count < 0 + ): + raise ValueError( + f"Portfolio truth {path} observation counts must be non-negative." + ) + if isinstance(value, SecurityFields): + count_fields = ( + value.dependabot_critical, + value.dependabot_high, + value.dependabot_medium, + value.dependabot_low, + value.code_scanning_critical, + value.code_scanning_high, + value.secret_scanning_open, + ) + if any(count is not None and count < 0 for count in count_fields): + raise ValueError( + f"Portfolio truth {path} observation counts must be non-negative." + ) + + +def _validate_runtime_value(value: object, annotation: object, path: str) -> None: + if annotation is Any: + return + origin = get_origin(annotation) + args = get_args(annotation) + if origin in {Union, UnionType}: + if not any(_runtime_value_matches(value, option) for option in args): + raise ValueError(f"Portfolio truth {path} has an invalid runtime type.") + if value is not None: + option = next( + option for option in args if _runtime_value_matches(value, option) + ) + _validate_runtime_value(value, option, path) + return + if origin is list: + if type(value) is not list: + raise ValueError(f"Portfolio truth {path} must be an array.") + for index, item in enumerate(value): + _validate_runtime_value(item, args[0], f"{path}[{index}]") + return + if origin is dict: + if type(value) is not dict: + raise ValueError(f"Portfolio truth {path} must be an object.") + for key, item in value.items(): + _validate_runtime_value(key, args[0], f"{path}.") + _validate_runtime_value(item, args[1], f"{path}[{key!r}]") + return + if isinstance(annotation, type) and is_dataclass(annotation): + if type(value) is not annotation: + raise ValueError(f"Portfolio truth {path} has an invalid runtime type.") + _validate_runtime_dataclass(value, path) + return + if not _runtime_value_matches(value, annotation): + raise ValueError(f"Portfolio truth {path} has an invalid runtime type.") + + +def _runtime_value_matches(value: object, annotation: object) -> bool: + if annotation is Any: + return True + origin = get_origin(annotation) + if origin in {Union, UnionType}: + return any(_runtime_value_matches(value, option) for option in get_args(annotation)) + if origin is list: + return type(value) is list + if origin is dict: + return type(value) is dict + if annotation is bool: + return type(value) is bool + if annotation is int: + return type(value) is int + if annotation is str: + return type(value) is str + if annotation is datetime: + return isinstance(value, datetime) + if annotation is type(None): + return value is None + return isinstance(annotation, type) and isinstance(value, annotation) + + +def _validate_snapshot_metadata( + snapshot: PortfolioTruthSnapshot, + *, + security_max_age_hours: int, + allow_synthetic_security_matrix: bool, +) -> tuple[int, bool]: + if snapshot.precedence_matrix != PRECEDENCE_MATRIX: + raise ValueError( + "PortfolioTruth precedence matrix differs from the producer contract." + ) + summary = snapshot.source_summary + catalog_errors = summary.get("catalog_errors") + catalog_warnings = summary.get("catalog_warnings") + legacy_registry_rows = summary.get("legacy_registry_rows") + notion_context_rows = summary.get("notion_context_rows") + notion_context_carried_forward = summary.get("notion_context_carried_forward") + if ( + not isinstance(catalog_errors, list) + or any(not isinstance(value, str) for value in catalog_errors) + or not isinstance(catalog_warnings, list) + or any(not isinstance(value, str) for value in catalog_warnings) + or not isinstance(legacy_registry_rows, int) + or isinstance(legacy_registry_rows, bool) + or legacy_registry_rows < 0 + or not isinstance(notion_context_rows, int) + or isinstance(notion_context_rows, bool) + or notion_context_rows < 0 + or not isinstance(notion_context_carried_forward, bool) + ): + raise ValueError("PortfolioTruth source summary has invalid bounded inputs.") + expected_summary = build_source_summary( + workspace_root=snapshot.workspace_root, + projects=snapshot.projects, + catalog_errors=catalog_errors, + catalog_warnings=catalog_warnings, + legacy_registry_rows=legacy_registry_rows, + notion_context_rows=notion_context_rows, + notion_context_carried_forward=notion_context_carried_forward, + ) + if summary != expected_summary: + raise ValueError("PortfolioTruth source summary differs from producer facts.") + expected_warnings = build_warnings( + catalog_errors=catalog_errors, + catalog_warnings=catalog_warnings, + unresolved_duplicates=summary["unresolved_duplicate_display_names"], + ) + if snapshot.warnings != expected_warnings: + raise ValueError("PortfolioTruth warnings differ from producer facts.") + _validate_snapshot_inputs( + snapshot, + notion_context_rows=notion_context_rows, + notion_context_carried_forward=notion_context_carried_forward, + security_max_age_hours=security_max_age_hours, + allow_synthetic_security_matrix=allow_synthetic_security_matrix, + ) + _validate_snapshot_exclusions(snapshot.exclusions) + return notion_context_rows, notion_context_carried_forward + + +def _validate_snapshot_inputs( + snapshot: PortfolioTruthSnapshot, + *, + notion_context_rows: int, + notion_context_carried_forward: bool, + security_max_age_hours: int, + allow_synthetic_security_matrix: bool, +) -> None: + inputs = snapshot.inputs + allowed_input_keys = {"catalog", "workspace", "notion", "github_security"} + if not isinstance(inputs, dict) or not { + "catalog", + "workspace", + "notion", + }.issubset(inputs) or not set(inputs).issubset(allowed_input_keys): + raise ValueError("PortfolioTruth input envelope fields are invalid.") + generated_at = snapshot.generated_at.isoformat() + catalog = inputs.get("catalog") + workspace = inputs.get("workspace") + notion = inputs.get("notion") + if ( + not isinstance(catalog, dict) + or set(catalog) != {"source_id", "sha256", "observed_at"} + or catalog.get("source_id") != "portfolio-catalog" + or catalog.get("observed_at") != generated_at + or ( + catalog.get("sha256") is not None + and ( + not isinstance(catalog.get("sha256"), str) + or re.fullmatch(r"[0-9a-f]{64}", catalog["sha256"]) is None + ) + ) + ): + raise ValueError("PortfolioTruth catalog input is invalid.") + if ( + not isinstance(workspace, dict) + or workspace + != {"source_id": "projects-root", "observed_at": generated_at} + ): + raise ValueError("PortfolioTruth workspace input is invalid.") + if not isinstance(notion, dict) or set(notion) != { + "mode", + "observed_at", + "carried_from_generated_at", + }: + raise ValueError("PortfolioTruth Notion input fields are invalid.") + mode = notion.get("mode") + observed_at = notion.get("observed_at") + carried_from = notion.get("carried_from_generated_at") + if notion_context_rows == 0: + expected_notion = { + "mode": "unavailable", + "observed_at": None, + "carried_from_generated_at": None, + } + if notion_context_carried_forward or notion != expected_notion: + raise ValueError("PortfolioTruth empty Notion input is inconsistent.") + elif notion_context_carried_forward: + known_origin = ( + mode == "carried-forward" + and isinstance(observed_at, str) + and carried_from == observed_at + ) + unknown_origin = ( + mode == "unavailable" + and observed_at is None + and carried_from is None + ) + if not known_origin and not unknown_origin: + raise ValueError("PortfolioTruth carried Notion input is inconsistent.") + if known_origin and ( + _parse_datetime(observed_at, "inputs.notion.observed_at") + > snapshot.generated_at + ): + raise ValueError("PortfolioTruth Notion input is future-dated.") + else: + if ( + mode not in {"live", "verified-snapshot"} + or not isinstance(observed_at, str) + or carried_from is not None + ): + raise ValueError("PortfolioTruth observed Notion input is inconsistent.") + if _parse_datetime(observed_at, "inputs.notion.observed_at") > snapshot.generated_at: + raise ValueError("PortfolioTruth Notion input is future-dated.") + github_security = inputs.get("github_security") + has_receipt_rows = any( + project.security.receipt_state in {"fresh", "stale"} + for project in snapshot.projects + ) + if has_receipt_rows and github_security is None: + raise ValueError( + "PortfolioTruth GitHub security input is required for receipt-backed rows." + ) + if github_security is not None: + _validate_github_security_input( + github_security, + snapshot=snapshot, + security_max_age_hours=security_max_age_hours, + allow_synthetic_security_matrix=allow_synthetic_security_matrix, + ) + + +def _validate_github_security_input( + value: Any, + *, + snapshot: PortfolioTruthSnapshot, + security_max_age_hours: int, + allow_synthetic_security_matrix: bool, +) -> None: + allowed = { + "source_id", + "schema_version", + "produced_at", + "state", + "age_hours", + "producer_commit", + "cohort_policy", + "cohort_repository_count", + "path", + "receipt_id", + "content_sha256", + } + required = allowed - {"receipt_id", "content_sha256"} + if ( + not isinstance(value, dict) + or not required.issubset(value) + or not set(value).issubset(allowed) + ): + raise ValueError("PortfolioTruth GitHub security input fields are invalid.") + text_fields = { + "source_id", + "schema_version", + "producer_commit", + "cohort_policy", + "path", + } + if any(field in value and not _nonempty_text(value[field]) for field in text_fields): + raise ValueError("PortfolioTruth GitHub security input text is invalid.") + if value.get("source_id", "github-security-coverage-receipt") != ( + "github-security-coverage-receipt" + ) or value.get("schema_version", GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION) != ( + GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION + ): + raise ValueError("PortfolioTruth GitHub security source identity is invalid.") + producer_commit = value.get("producer_commit") + if producer_commit is not None and ( + not isinstance(producer_commit, str) + or re.fullmatch(r"[0-9a-f]{40}", producer_commit) is None + or set(producer_commit) == {"0"} + ): + raise ValueError("PortfolioTruth GitHub security producer commit is invalid.") + snapshot_producer_commit = snapshot.producer.get("commit") + if snapshot_producer_commit and producer_commit != snapshot_producer_commit: + raise ValueError( + "PortfolioTruth GitHub security producer commit differs from producer evidence." + ) + if value.get("cohort_policy", DEFAULT_COHORT_POLICY) != DEFAULT_COHORT_POLICY: + raise ValueError("PortfolioTruth GitHub security cohort policy is invalid.") + produced_at = _parse_datetime( + value["produced_at"], "inputs.github_security.produced_at" + ) + raw_age = (snapshot.generated_at - produced_at).total_seconds() / 3600 + if raw_age < -0.05: + raise ValueError("PortfolioTruth GitHub security input is future-dated.") + age = round(max(raw_age, 0.0), 3) + expected_state = "stale" if raw_age > security_max_age_hours else "fresh" + if value["state"] != expected_state: + raise ValueError("PortfolioTruth GitHub security input state is invalid.") + age_hours = value.get("age_hours") + if ( + not isinstance(age_hours, (int, float)) + or isinstance(age_hours, bool) + or age_hours != age + ): + raise ValueError("PortfolioTruth GitHub security input age is invalid.") + cohort_count = value.get("cohort_repository_count") + expected_cohort_count = sum( + project.security.cohort_member + for project in snapshot.projects + if not project.identity.project_key.startswith("supp:") + ) + if ( + not isinstance(cohort_count, int) + or isinstance(cohort_count, bool) + or cohort_count < 0 + or cohort_count != expected_cohort_count + ): + raise ValueError("PortfolioTruth GitHub security cohort count is invalid.") + receipt_id = value.get("receipt_id") + content_sha256 = value.get("content_sha256") + if (receipt_id is None) != (content_sha256 is None) or ( + receipt_id is not None + and ( + not isinstance(receipt_id, str) + or re.fullmatch(r"sha256:[0-9a-f]{64}", receipt_id) is None + or not isinstance(content_sha256, str) + or re.fullmatch(r"[0-9a-f]{64}", content_sha256) is None + ) + ): + raise ValueError("PortfolioTruth GitHub security input identity is invalid.") + receipt_sources = { + project.security.source_produced_at + for project in snapshot.projects + if project.security.receipt_state in {"fresh", "stale"} + } + receipt_states = { + project.security.receipt_state + for project in snapshot.projects + if project.security.receipt_state in {"fresh", "stale"} + } + if receipt_sources and ( + value["produced_at"] not in receipt_sources + if allow_synthetic_security_matrix + else receipt_sources != {value["produced_at"]} + ): + raise ValueError("PortfolioTruth GitHub security source time is inconsistent.") + if receipt_states and ( + value["state"] not in receipt_states + if allow_synthetic_security_matrix + else receipt_states != {value["state"]} + ): + raise ValueError("PortfolioTruth GitHub security receipt state is inconsistent.") + + +def _validate_snapshot_exclusions(exclusions: Any) -> None: + if not isinstance(exclusions, dict) or set(exclusions) != { + "policy_version", + "counts", + }: + raise ValueError("PortfolioTruth exclusions envelope fields are invalid.") + counts = exclusions.get("counts") + if not isinstance(counts, dict) or any( + not isinstance(key, str) + or key not in WORKSPACE_EXCLUSION_REASONS + or not isinstance(value, int) + or isinstance(value, bool) + or value <= 0 + for key, value in counts.items() + ): + raise ValueError("PortfolioTruth exclusion counts are invalid.") + if exclusions != build_exclusions(counts): + raise ValueError("PortfolioTruth exclusions differ from producer policy.") + + +def _validate_security_fields( + security: SecurityFields, + project_key: str, + generated_at: datetime, + security_max_age_hours: int = 24, +) -> None: + """Validate receipt-backed provider envelopes after receipt normalization.""" + providers = security.providers + if not isinstance(providers, Mapping): + raise ValueError(f"Security providers for {project_key} must be an object.") + if not isinstance(security.cohort_member, bool) or not isinstance( + security.cohort_policy, str + ): + raise ValueError( + f"Security cohort metadata for {project_key} has invalid types." + ) + + has_receipt_evidence = bool( + security.receipt_schema_version + or security.source_produced_at + or security.receipt_state in {"fresh", "stale"} + ) + if not has_receipt_evidence: + if providers: + _validate_legacy_security_fields(security, project_key) + else: + _validate_unattested_security_fields(security, project_key) + return + if security.receipt_schema_version != GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION: + raise ValueError( + f"Invalid security receipt schema for {project_key}: " + f"{security.receipt_schema_version}" + ) + if security.receipt_state not in {"fresh", "stale"}: + raise ValueError( + f"Invalid security receipt state for {project_key}: " + f"{security.receipt_state}" + ) + if ( + security.cohort_member is not True + or security.cohort_policy != DEFAULT_COHORT_POLICY + ): + raise ValueError( + f"Receipt-backed security evidence for {project_key} must be a cohort " + "member under the production cohort policy." + ) + produced_at = _parse_datetime( + security.source_produced_at, + f"projects[{project_key}].security.source_produced_at", + ) + receipt_age_hours = (generated_at - produced_at).total_seconds() / 3600 + if receipt_age_hours < -0.05: + raise ValueError(f"Security receipt for {project_key} is future-dated.") + expected_receipt_state = ( + "stale" if receipt_age_hours > security_max_age_hours else "fresh" + ) + if security.receipt_state != expected_receipt_state: + raise ValueError( + f"Security receipt state for {project_key} does not match the " + "configured freshness window." + ) + if set(providers) != set(PROVIDER_NAMES): + raise ValueError( + f"Security providers for {project_key} must contain exactly: " + f"{', '.join(PROVIDER_NAMES)}" + ) + + states: dict[str, str] = {} + count_fields = { + "dependabot": { + "critical": "dependabot_critical", + "high": "dependabot_high", + "medium": "dependabot_medium", + "low": "dependabot_low", + }, + "code_scanning": { + "critical": "code_scanning_critical", + "high": "code_scanning_high", + }, + "secret_scanning": {"open": "secret_scanning_open"}, + } + for name in PROVIDER_NAMES: + provider = providers[name] + try: + validate_normalized_security_provider( + name, + provider, + produced_at=produced_at, + current=generated_at, + max_age_hours=security_max_age_hours, + receipt_is_stale=security.receipt_state == "stale", + ) + except SecurityCoverageError as exc: + raise ValueError( + f"Invalid security provider for {project_key}/{name}: {exc}" + ) from exc + state = str(provider["state"]) + states[name] = state + counts = provider["counts"] + if security.receipt_state == "stale" and state == "observed": + raise ValueError( + f"Stale security receipt for {project_key} cannot retain " + f"an observed {name} provider." + ) + + for count_name, field_name in count_fields[name].items(): + expected = counts[count_name] if state == "observed" else None + if getattr(security, field_name) != expected: + raise ValueError( + f"Security count {field_name} for {project_key} does not " + f"match the normalized {name} provider." + ) + + observed_count = sum(state == "observed" for state in states.values()) + if security.receipt_state == "stale": + expected_coverage = "stale" + elif observed_count == len(PROVIDER_NAMES): + expected_coverage = "complete" + elif observed_count: + expected_coverage = "partial" + elif any(state == "stale" for state in states.values()): + expected_coverage = "stale" + else: + expected_coverage = "unknown" + if security.coverage_state != expected_coverage: + raise ValueError( + f"Security coverage state for {project_key} must be {expected_coverage}." + ) + if security.alerts_available is not (expected_coverage == "complete"): + raise ValueError( + f"Security alerts_available for {project_key} does not match coverage." + ) + + +def _validate_legacy_security_fields( + security: SecurityFields, + project_key: str, +) -> None: + if ( + security.receipt_schema_version + or security.source_produced_at + or security.receipt_state != "unknown" + or set(security.providers) != set(PROVIDER_NAMES) + ): + raise ValueError(f"Legacy security evidence for {project_key} is invalid.") + provider_keys = { + "state", + "observed_at", + "http_status", + "reason", + "etag", + "last_modified", + "pagination_complete", + "counts", + } + count_fields = { + "dependabot": { + "critical": "dependabot_critical", + "high": "dependabot_high", + "medium": "dependabot_medium", + "low": "dependabot_low", + }, + "code_scanning": { + "critical": "code_scanning_critical", + "high": "code_scanning_high", + }, + "secret_scanning": {"open": "secret_scanning_open"}, + } + states: dict[str, str] = {} + for name in PROVIDER_NAMES: + provider = security.providers[name] + if not isinstance(provider, Mapping) or set(provider) != provider_keys: + raise ValueError( + f"Legacy security provider for {project_key}/{name} is invalid." + ) + state = provider.get("state") + if state not in {"observed", "not_requested"}: + raise ValueError( + f"Legacy security provider state for {project_key}/{name} is invalid." + ) + states[name] = state + if ( + provider.get("observed_at") is not None + or provider.get("http_status") is not None + or provider.get("reason") != "legacy_ghas_entry" + or provider.get("etag") is not None + or provider.get("last_modified") is not None + ): + raise ValueError( + f"Legacy security provider envelope for {project_key}/{name} is invalid." + ) + counts = provider.get("counts") + if state == "observed": + if ( + provider.get("pagination_complete") is not True + or not isinstance(counts, Mapping) + or any( + not isinstance(value, int) or isinstance(value, bool) or value < 0 + for value in counts.values() + ) + ): + raise ValueError( + f"Legacy security provider counts for {project_key}/{name} are invalid." + ) + elif provider.get("pagination_complete") is not False or counts is not None: + raise ValueError( + f"Legacy unobserved provider for {project_key}/{name} is invalid." + ) + for count_name, field_name in count_fields[name].items(): + expected = counts.get(count_name, 0) if state == "observed" else None + if getattr(security, field_name) != expected: + raise ValueError( + f"Legacy security count for {project_key}/{field_name} " + "does not match its provider." + ) + + observed_count = sum(state == "observed" for state in states.values()) + expected_coverage = ( + "complete" + if observed_count == 3 + else "partial" + if observed_count + else "unknown" + ) + if ( + security.coverage_state != expected_coverage + or security.alerts_available is not (expected_coverage == "complete") + ): + raise ValueError(f"Legacy security coverage for {project_key} is inconsistent.") + + +def _validate_unattested_security_fields( + security: SecurityFields, + project_key: str, +) -> None: + count_values = ( + security.dependabot_critical, + security.dependabot_high, + security.dependabot_medium, + security.dependabot_low, + security.code_scanning_critical, + security.code_scanning_high, + security.secret_scanning_open, + ) + if ( + security.alerts_available is not False + or security.coverage_state != "unknown" + or security.receipt_schema_version + or security.receipt_state != "unknown" + or security.source_produced_at + or any(value is not None for value in count_values) + ): + raise ValueError( + f"Unattested security evidence for {project_key} is inconsistent." + ) + valid_cohort = ( + security.cohort_member is True + and security.cohort_policy == "portfolio-default-attention-v1" + ) or (security.cohort_member is False and not security.cohort_policy) + if not valid_cohort: + raise ValueError( + f"Unattested security cohort metadata for {project_key} is inconsistent." + ) + + +def _validate_repository_state( + repository_state: dict[str, Any], + security: SecurityFields, + project_key: str, + generated_at: datetime, + security_max_age_hours: int, +) -> None: + if not isinstance(repository_state, Mapping): + raise ValueError(f"Repository state for {project_key} must be an object.") + has_receipt_evidence = bool(security.receipt_schema_version) + remote = repository_state.get("remote_default_branch") + if not isinstance(remote, dict): + raise ValueError( + f"Repository state for {project_key} requires remote_default_branch." + ) + if has_receipt_evidence: + produced_at = _parse_datetime( + security.source_produced_at, + f"projects[{project_key}].security.source_produced_at", + ) + try: + expected_remote = _validate_remote_repository( + remote, + receipt_is_stale=security.receipt_state == "stale", + produced_at=produced_at, + current=generated_at, + max_age_hours=security_max_age_hours, + ) + except SecurityCoverageError as exc: + raise ValueError( + f"Invalid remote default branch for {project_key}: {exc}" + ) from exc + else: + expected_remote = { + "state": "unknown", + "reason_code": "not_requested", + "reason": ( + "no independent live remote read was performed by portfolio generation" + ), + } + if remote != expected_remote: + raise ValueError( + f"Remote default branch for {project_key} differs from production " + "normalization." + ) + _validate_repository_state_shape( + repository_state, + expected_remote=expected_remote, + project_key=project_key, + generated_at=generated_at, + ) + + +def _validate_repository_state_shape( + repository_state: Mapping[str, Any], + *, + expected_remote: dict[str, Any], + project_key: str, + generated_at: datetime, +) -> None: + state = repository_state.get("state") + if state not in {"observed", "unknown", "not_a_repository"}: + raise ValueError(f"Invalid repository state for {project_key}.") + observed_at = _parse_datetime( + repository_state.get("observed_at"), + f"projects[{project_key}].repository_state.observed_at", + ) + if observed_at != generated_at: + raise ValueError( + f"Repository state for {project_key} must match snapshot generated_at." + ) + if state == "not_a_repository": + _require_repository_keys( + repository_state, + {"state", "observed_at", "remote_default_branch"}, + project_key, + "repository state", + ) + return + if state == "unknown" and "topology" not in repository_state: + _require_repository_keys( + repository_state, + { + "state", + "observed_at", + "reason_code", + "reason", + "remote_default_branch", + }, + project_key, + "repository state", + ) + if repository_state.get( + "reason_code" + ) != "repository_observation_failed" or not _nonempty_text( + repository_state.get("reason") + ): + raise ValueError( + f"Repository observation failure for {project_key} is invalid." + ) + return + + required = { + "state", + "observed_at", + "local", + "remote_default_branch", + "topology", + "worktrees", + } + if state == "unknown": + required.remove("local") + required.update({"reason_code", "reason"}) + if "local" in repository_state: + if repository_state.get("local") is None: + raise ValueError( + f"Unknown repository state for {project_key} must omit null local." + ) + required.add("local") + _require_repository_keys( + repository_state, + required, + project_key, + "repository state", + ) + worktrees = repository_state.get("worktrees") + if not isinstance(worktrees, list) or not worktrees: + raise ValueError(f"Repository worktrees for {project_key} are invalid.") + for index, worktree in enumerate(worktrees): + _validate_worktree(worktree, project_key=project_key, index=index) + paths = [worktree["path"] for worktree in worktrees] + if len({Path(path).resolve() for path in paths}) != len(paths): + raise ValueError(f"Repository worktree paths for {project_key} are duplicated.") + + topology = repository_state.get("topology") + if not isinstance(topology, Mapping): + raise ValueError(f"Repository topology for {project_key} is invalid.") + kind = topology.get("kind") + topology_keys = { + "kind", + "configured_path", + "worktree_count", + "linked_worktree_count", + "selection", + } + if kind == "bare_coordinator": + topology_keys.add("coordinator") + elif kind != "working_repository": + raise ValueError(f"Repository topology kind for {project_key} is invalid.") + _require_repository_keys(topology, topology_keys, project_key, "topology") + configured_path = topology.get("configured_path") + if not any(_same_repository_path(configured_path, path) for path in paths): + raise ValueError( + f"Repository configured path for {project_key} is not a worktree." + ) + worktree_count = topology.get("worktree_count") + if ( + not isinstance(worktree_count, int) + or isinstance(worktree_count, bool) + or worktree_count != len(worktrees) + ): + raise ValueError(f"Repository worktree count for {project_key} is invalid.") + coordinator_count = sum(item.get("state") == "coordinator" for item in worktrees) + expected_linked_count = len(worktrees) - coordinator_count + if kind == "working_repository": + expected_linked_count -= 1 + if coordinator_count: + raise ValueError( + f"Working repository topology for {project_key} has a coordinator." + ) + elif coordinator_count != 1: + raise ValueError( + f"Bare repository topology for {project_key} requires one coordinator." + ) + linked_worktree_count = topology.get("linked_worktree_count") + if ( + not isinstance(linked_worktree_count, int) + or isinstance(linked_worktree_count, bool) + or linked_worktree_count != expected_linked_count + ): + raise ValueError( + f"Repository linked worktree count for {project_key} is invalid." + ) + if kind == "bare_coordinator": + _validate_coordinator( + topology.get("coordinator"), + worktrees, + configured_path=str(configured_path), + project_key=project_key, + ) + + selection = topology.get("selection") + _validate_selection(selection, project_key=project_key) + expected_selection = _select_remote_default_worktree(worktrees, expected_remote) + if selection != expected_selection: + raise ValueError(f"Repository selection for {project_key} is inconsistent.") + + local = repository_state.get("local") + if local is not None: + _validate_local(local, project_key=project_key, label="local") + if selection.get("state") == "selected": + if state != "observed" or local != _local_from_worktree( + _selected_worktree(worktrees, selection) + ): + raise ValueError( + f"Selected repository worktree for {project_key} does not match local." + ) + return + + if kind == "bare_coordinator": + if ( + state != "unknown" + or local is not None + or repository_state.get("reason_code") != selection.get("reason_code") + or repository_state.get("reason") != selection.get("reason") + ): + raise ValueError( + f"Bare repository uncertainty for {project_key} is inconsistent." + ) + return + + configured = next( + item + for item in worktrees + if _same_repository_path(item["path"], configured_path) + ) + if configured.get("state") != "observed": + raise ValueError( + f"Configured repository worktree for {project_key} is not observed." + ) + expected_local = _local_from_worktree(configured) + if local != expected_local: + raise ValueError( + f"Configured repository worktree for {project_key} does not match local." + ) + if expected_remote.get("state") == "observed": + expected_state = "unknown" + expected_reason_code = selection.get("reason_code") + expected_reason = selection.get("reason") + elif _tracks_nonmatching_branch(expected_local): + expected_state = "unknown" + expected_reason_code = "nonstandard_upstream_requires_remote_default_evidence" + expected_reason = ( + "the configured worktree tracks a differently named branch, and " + "independent remote-default evidence is unavailable" + ) + else: + expected_state = "observed" + expected_reason_code = expected_reason = None + if state != expected_state or ( + state == "unknown" + and ( + repository_state.get("reason_code") != expected_reason_code + or repository_state.get("reason") != expected_reason + ) + ): + raise ValueError(f"Repository state for {project_key} is inconsistent.") + + +def _validate_local( + value: Any, + *, + project_key: str, + label: str, + require_exact_keys: bool = True, +) -> None: + if not isinstance(value, Mapping): + raise ValueError(f"Repository {label} for {project_key} is invalid.") + local_keys = { + "path", + "head", + "branch", + "dirty", + "dirty_path_count", + "upstream", + "upstream_branch", + "upstream_remote", + "upstream_observation_source", + "ahead", + "behind", + } + if require_exact_keys: + _require_repository_keys(value, local_keys, project_key, label) + elif not local_keys.issubset(value): + raise ValueError(f"Repository {label} fields for {project_key} are invalid.") + if not _nonempty_text(value.get("path")): + raise ValueError(f"Repository {label} path for {project_key} is invalid.") + if not _valid_git_oid(value.get("head")): + raise ValueError(f"Repository {label} head for {project_key} is invalid.") + branch = value.get("branch") + if branch is not None and not _valid_git_branch(branch): + raise ValueError(f"Repository {label} branch for {project_key} is invalid.") + dirty = value.get("dirty") + count = value.get("dirty_path_count") + if ( + not isinstance(dirty, bool) + or not isinstance(count, int) + or isinstance(count, bool) + or count < 0 + or dirty is not (count > 0) + ): + raise ValueError( + f"Repository {label} dirty state for {project_key} is invalid." + ) + upstream = value.get("upstream") + upstream_branch = value.get("upstream_branch") + upstream_remote = value.get("upstream_remote") + expected_source = "local_tracking_ref" if upstream else "unavailable" + if (upstream is not None and not _valid_git_upstream(upstream)) or value.get( + "upstream_observation_source" + ) != expected_source: + raise ValueError(f"Repository {label} upstream for {project_key} is invalid.") + if upstream is None: + if upstream_branch is not None or upstream_remote is not None: + raise ValueError( + f"Repository {label} upstream identity for {project_key} is invalid." + ) + elif not _valid_git_branch(upstream_branch) or not _valid_upstream_identity( + upstream=upstream, + upstream_branch=upstream_branch, + upstream_remote=upstream_remote, + ): + raise ValueError( + f"Repository {label} upstream identity for {project_key} is invalid." + ) + if branch is None and any( + item is not None for item in (upstream, upstream_branch, upstream_remote) + ): + raise ValueError( + f"Repository {label} detached upstream for {project_key} is invalid." + ) + for field_name in ("ahead", "behind"): + count_value = value.get(field_name) + if upstream is None: + valid = count_value is None + else: + valid = ( + isinstance(count_value, int) + and not isinstance(count_value, bool) + and count_value >= 0 + ) + if not valid: + raise ValueError( + f"Repository {label} {field_name} for {project_key} is invalid." + ) + + +def _validate_worktree(value: Any, *, project_key: str, index: int) -> None: + if not isinstance(value, Mapping): + raise ValueError(f"Repository worktree {index} for {project_key} is invalid.") + state = value.get("state") + label = f"worktree {index}" + if state == "observed": + _require_repository_keys( + value, + { + "state", + "path", + "head", + "branch", + "dirty", + "dirty_path_count", + "upstream", + "upstream_branch", + "upstream_remote", + "upstream_observation_source", + "ahead", + "behind", + "detached", + "bare", + }, + project_key, + label, + ) + _validate_local( + value, + project_key=project_key, + label=label, + require_exact_keys=False, + ) + if value.get("bare") is not False or not isinstance( + value.get("detached"), bool + ): + raise ValueError(f"Repository {label} flags for {project_key} are invalid.") + if (value["branch"] is None) is not value["detached"]: + raise ValueError( + f"Repository {label} branch state for {project_key} is invalid." + ) + return + if state == "coordinator": + _require_repository_keys( + value, + { + "state", + "path", + "head", + "branch", + "detached", + "bare", + "dirty", + "dirty_path_count", + }, + project_key, + label, + ) + if ( + not _nonempty_text(value.get("path")) + or value.get("detached") is not False + or value.get("bare") is not True + or value.get("dirty") is not None + or value.get("dirty_path_count") is not None + or not _optional_git_head(value.get("head")) + or not _optional_git_branch(value.get("branch")) + ): + raise ValueError(f"Repository {label} for {project_key} is invalid.") + return + if state == "unknown": + _require_repository_keys( + value, + { + "state", + "reason_code", + "reason", + "path", + "head", + "branch", + "detached", + "bare", + "dirty", + "dirty_path_count", + }, + project_key, + label, + ) + if ( + value.get("reason_code") != "worktree_observation_failed" + or value.get("reason") != "git could not observe the linked worktree" + or not _nonempty_text(value.get("path")) + or not _optional_git_head(value.get("head")) + or not _optional_git_branch(value.get("branch")) + or not isinstance(value.get("detached"), bool) + or value.get("bare") is not False + or value.get("dirty") is not None + or value.get("dirty_path_count") is not None + ): + raise ValueError(f"Repository {label} for {project_key} is invalid.") + if (value["branch"] is None) is not value["detached"]: + raise ValueError( + f"Repository {label} branch state for {project_key} is invalid." + ) + return + raise ValueError(f"Repository {label} state for {project_key} is invalid.") + + +def _valid_upstream_identity( + *, + upstream: str, + upstream_branch: str, + upstream_remote: Any, +) -> bool: + if upstream_remote == ".": + return upstream == upstream_branch + return ( + _valid_git_branch(upstream_remote) + and upstream == f"{upstream_remote}/{upstream_branch}" + ) + + +def _validate_coordinator( + value: Any, + worktrees: list[dict[str, Any]], + *, + configured_path: str, + project_key: str, +) -> None: + if not isinstance(value, Mapping): + raise ValueError(f"Repository coordinator for {project_key} is invalid.") + _require_repository_keys( + value, + {"path", "head", "head_state", "branch"}, + project_key, + "coordinator", + ) + matching = [ + item + for item in worktrees + if item.get("state") == "coordinator" + and _same_repository_path(item.get("path"), configured_path) + ] + if len(matching) != 1: + raise ValueError(f"Repository coordinator for {project_key} is inconsistent.") + head = value.get("head") + expected_head_state = "observed" if head else "dangling" + if ( + value.get("path") != configured_path + or value.get("head_state") != expected_head_state + or not _optional_git_head(head) + or not _optional_git_branch(value.get("branch")) + ): + raise ValueError(f"Repository coordinator for {project_key} is inconsistent.") + + +def _validate_selection(value: Any, *, project_key: str) -> None: + if not isinstance(value, Mapping): + raise ValueError(f"Repository selection for {project_key} is invalid.") + state = value.get("state") + keys = {"source", "state", "reason_code", "reason", "candidate_count"} + if state == "selected": + keys.update({"path", "head", "branch"}) + elif state != "unknown": + raise ValueError(f"Repository selection for {project_key} is invalid.") + _require_repository_keys(value, keys, project_key, "selection") + candidate_count = value.get("candidate_count") + if ( + not _nonempty_text(value.get("source")) + or not _nonempty_text(value.get("reason_code")) + or not isinstance(candidate_count, int) + or isinstance(candidate_count, bool) + or candidate_count < 0 + ): + raise ValueError(f"Repository selection for {project_key} is invalid.") + if state == "selected": + if ( + value.get("reason") is not None + or not _nonempty_text(value.get("path")) + or not _valid_git_oid(value.get("head")) + or not _optional_git_branch(value.get("branch")) + ): + raise ValueError(f"Repository selection for {project_key} is invalid.") + elif not _nonempty_text(value.get("reason")): + raise ValueError(f"Repository selection for {project_key} is invalid.") + + +def _require_repository_keys( + value: Mapping[str, Any], + expected: set[str], + project_key: str, + label: str, +) -> None: + if set(value) != expected: + raise ValueError(f"Repository {label} fields for {project_key} are invalid.") + + +def _nonempty_text(value: Any) -> bool: + return isinstance(value, str) and bool(value.strip()) + +def _optional_git_head(value: Any) -> bool: + return value is None or _valid_git_oid(value) -def _validate_contract_envelope(snapshot: PortfolioTruthSnapshot) -> None: - producer = snapshot.producer + +def _optional_git_branch(value: Any) -> bool: + return value is None or _valid_git_branch(value) + + +def _same_repository_path(left: Any, right: Any) -> bool: + return ( + isinstance(left, str) + and isinstance(right, str) + and Path(left).resolve() == Path(right).resolve() + ) + + +def validate_truth_snapshot_payload( + payload: Mapping[str, Any], + *, + security_max_age_hours: int = 24, + allow_synthetic_security_matrix: bool = False, +) -> None: + """Fully validate serialized truth, including canonical byte-shape fidelity.""" + if payload.get("workspace_root") != "/demo-workspace": + raise ValueError( + "Portable PortfolioTruth workspace_root must be exactly /demo-workspace." + ) + if _contains_private_identity(payload): + raise ValueError( + "Portable Repository/upstream paths are not public-safe: payload contains " + "a private user path or email identity." + ) + contract_fixture = payload.get("contract_fixture") + is_documented_contract_matrix = ( + isinstance(contract_fixture, Mapping) + and contract_fixture + == { + "contract_version": "ghra-pcc-portfolio-truth.v1", + "deterministic": True, + "producer_evidence": "absent", + "security_evidence_semantics": ( + "synthetic-cross-receipt-state-matrix" + ), + } + and payload.get("producer") == {} + ) + github_security = ( + payload.get("inputs", {}).get("github_security") + if isinstance(payload.get("inputs"), Mapping) + else None + ) + if isinstance(github_security, Mapping) and ( + github_security.get("receipt_id") is None + or github_security.get("content_sha256") is None + ): + raise ValueError( + "Portable PortfolioTruth GitHub security input requires both receipt_id " + "and content_sha256." + ) + canonical = canonicalize_truth_snapshot_payload( + payload, + security_max_age_hours=security_max_age_hours, + allow_synthetic_security_matrix=( + allow_synthetic_security_matrix or is_documented_contract_matrix + ), + ) + for project in canonical["projects"]: + _validate_portable_repository_paths( + project["repository_state"], + project_key=project["identity"]["project_key"], + project_path=project["identity"]["path"], + ) + supplied = _without_documented_contract_canaries(payload) + mismatch = _first_payload_mismatch(supplied, canonical) + if mismatch is not None: + raise ValueError( + "Serialized PortfolioTruth snapshot differs from canonical " + f"reconstruction at {mismatch}." + ) + + +def _validate_portable_repository_paths( + repository_state: Mapping[str, Any], + *, + project_key: str, + project_path: str, +) -> None: + paths: list[Any] = [] + local = repository_state.get("local") + if isinstance(local, Mapping): + paths.append(local.get("path")) + topology = repository_state.get("topology") + if isinstance(topology, Mapping): + paths.append(topology.get("configured_path")) + selection = topology.get("selection") + if isinstance(selection, Mapping) and selection.get("state") == "selected": + paths.append(selection.get("path")) + coordinator = topology.get("coordinator") + if isinstance(coordinator, Mapping): + paths.append(coordinator.get("path")) + worktrees = repository_state.get("worktrees") + if isinstance(worktrees, list): + paths.extend( + worktree.get("path") + for worktree in worktrees + if isinstance(worktree, Mapping) + ) + if any( + not isinstance(path, str) + or not path.startswith("/demo-workspace/") + or ".." in Path(path).parts + for path in paths + ): + raise ValueError( + f"Portable repository paths for {project_key} are not public-safe." + ) + if isinstance(topology, Mapping) and topology.get("configured_path") != str( + Path("/demo-workspace") / project_path + ): + raise ValueError( + f"Portable configured path for {project_key} does not match identity." + ) + + +def _contains_private_identity(value: Any) -> bool: + if isinstance(value, str): + return ( + re.search( + r"(?:^|[/\\])(?:users|home|root)[/\\]", value, re.IGNORECASE + ) + is not None + or re.search( + r"(?:^|[/\\])private[/\\]var[/\\]folders(?:[/\\]|$)", + value, + re.IGNORECASE, + ) + is not None + or re.search( + r"(?:^|[/\\])documents and settings[/\\]", + value, + re.IGNORECASE, + ) + is not None + or re.search( + r"[A-Z0-9._%+-]+@[A-Z0-9.-]+", + value, + re.IGNORECASE, + ) + is not None + ) + if isinstance(value, Mapping): + return any( + _contains_private_identity(item) + for pair in value.items() + for item in pair + ) + if isinstance(value, list): + return any(_contains_private_identity(item) for item in value) + return False + + +def canonicalize_truth_snapshot_payload( + payload: Mapping[str, Any], + *, + security_max_age_hours: int = 24, + allow_synthetic_security_matrix: bool = False, +) -> dict[str, Any]: + """Return the canonical serializer output for one raw truth snapshot.""" + snapshot = _snapshot_from_payload(payload) + validate_truth_snapshot( + snapshot, + security_max_age_hours=security_max_age_hours, + allow_synthetic_security_matrix=allow_synthetic_security_matrix, + ) + return snapshot.to_dict() + + +def _without_documented_contract_canaries( + payload: Mapping[str, Any], +) -> dict[str, Any]: + """Remove only the two additive paths documented by the fixture manifest.""" + supplied = deepcopy(dict(payload)) + supplied.pop("contract_fixture", None) + projects = supplied.get("projects") + if projects and isinstance(projects, list) and isinstance(projects[0], dict): + projects[0].pop("additive_contract_canary", None) + return supplied + + +def _first_payload_mismatch( + supplied: object, + canonical: object, + path: str = "$", +) -> str | None: + if isinstance(supplied, dict) and isinstance(canonical, dict): + for key in sorted(set(supplied) | set(canonical)): + child = f"{path}.{key}" + if key not in supplied or key not in canonical: + return child + mismatch = _first_payload_mismatch(supplied[key], canonical[key], child) + if mismatch is not None: + return mismatch + return None + if isinstance(supplied, list) and isinstance(canonical, list): + if len(supplied) != len(canonical): + return path + for index, (supplied_item, canonical_item) in enumerate( + zip(supplied, canonical, strict=True) + ): + mismatch = _first_payload_mismatch( + supplied_item, canonical_item, f"{path}[{index}]" + ) + if mismatch is not None: + return mismatch + return None + return None if supplied == canonical else path + + +def _snapshot_from_payload(payload: Mapping[str, Any]) -> PortfolioTruthSnapshot: + try: + raw_projects = payload["projects"] + if not isinstance(raw_projects, list): + raise ValueError("Portfolio truth projects must be an array.") + projects = [_project_from_payload(project) for project in raw_projects] + return PortfolioTruthSnapshot( + schema_version=str(payload["schema_version"]), + generated_at=_parse_datetime(payload["generated_at"], "generated_at"), + workspace_root=str(payload["workspace_root"]), + source_summary=dict(payload["source_summary"]), + precedence_matrix=dict(payload["precedence_matrix"]), + warnings=list(payload["warnings"]), + projects=projects, + derivation_policy_version=str(payload["derivation_policy_version"]), + producer=dict(payload["producer"]), + inputs=dict(payload["inputs"]), + coverage=list(payload["coverage"]), + exclusions=dict(payload["exclusions"]), + ) + except KeyError as exc: + raise ValueError( + f"Portfolio truth payload is missing field: {exc.args[0]}" + ) from exc + except TypeError as exc: + raise ValueError( + f"Portfolio truth payload has an invalid field type: {exc}" + ) from exc + + +def _project_from_payload(payload: object) -> PortfolioTruthProject: + if not isinstance(payload, Mapping): + raise ValueError("Portfolio truth project must be an object.") + try: + derived = dict(payload["derived"]) + last_activity = derived.get("last_meaningful_activity_at") + if last_activity is not None: + derived["last_meaningful_activity_at"] = _parse_datetime( + last_activity, "projects[].derived.last_meaningful_activity_at" + ) + return PortfolioTruthProject( + identity=IdentityFields( + **_model_kwargs(IdentityFields, payload["identity"]) + ), + declared=DeclaredFields( + **_model_kwargs(DeclaredFields, payload["declared"]) + ), + derived=DerivedFields(**_model_kwargs(DerivedFields, derived)), + risk=RiskFields(**_model_kwargs(RiskFields, payload.get("risk", {}))), + security=SecurityFields( + **_model_kwargs(SecurityFields, payload.get("security", {})) + ), + advisory=AdvisoryFields( + **_model_kwargs(AdvisoryFields, payload.get("advisory", {})) + ), + repository_state=dict(payload.get("repository_state", {})), + provenance=dict(payload.get("provenance", {})), + warnings=list(payload.get("warnings", [])), + ) + except KeyError as exc: + raise ValueError( + f"Portfolio truth project is missing field: {exc.args[0]}" + ) from exc + except TypeError as exc: + raise ValueError( + f"Portfolio truth project has an invalid field type: {exc}" + ) from exc + + +def _model_kwargs(model: type, payload: object) -> dict[str, Any]: + if not isinstance(payload, Mapping): + raise ValueError(f"{model.__name__} payload must be an object.") + allowed = {field.name for field in fields(model) if field.init} + return {key: value for key, value in payload.items() if key in allowed} + + +def _parse_datetime(value: object, field_name: str) -> datetime: + if isinstance(value, datetime): + return value + if not isinstance(value, str): + raise ValueError(f"Portfolio truth {field_name} must be an ISO-8601 timestamp.") + normalized = f"{value[:-1]}+00:00" if value.endswith("Z") else value + try: + parsed = datetime.fromisoformat(normalized) + except ValueError as exc: + raise ValueError( + f"Portfolio truth {field_name} must be an ISO-8601 timestamp." + ) from exc + if parsed.tzinfo is None: + raise ValueError(f"Portfolio truth {field_name} must include a timezone.") + return parsed + + +def _validate_contract_envelope(payload: Mapping[str, Any]) -> None: + producer = payload.get("producer") + if not isinstance(producer, dict): + raise ValueError("Portfolio truth producer evidence must be an object.") if producer: required = { "repository", + "expected_repository", "commit", "ref", "checkout_role", @@ -112,29 +1823,64 @@ def _validate_contract_envelope(snapshot: PortfolioTruthSnapshot) -> None: "verified_at", "receipt_id", } - missing = sorted(required - producer.keys()) - if missing: - raise ValueError(f"Producer evidence is missing fields: {missing}") + if set(producer) != required: + missing = sorted(required - producer.keys()) + if missing: + raise ValueError(f"Producer evidence is missing fields: {missing}") + raise ValueError("Producer evidence contains unexpected fields.") commit = producer.get("commit") if ( not isinstance(commit, str) or len(commit) != 40 or any(char not in "0123456789abcdef" for char in commit) + or set(commit) == {"0"} ): raise ValueError("Producer commit must be a lowercase 40-character SHA.") + for field_name in ( + "repository", + "expected_repository", + "ref", + "checkout_role", + ): + if not _nonempty_text(producer.get(field_name)): + raise ValueError(f"Producer {field_name} must be a nonempty string.") + checkout_path = producer.get("checkout_path") + if not isinstance(checkout_path, str) or not Path(checkout_path).is_absolute(): + raise ValueError("Producer checkout_path must be an absolute path.") if producer.get("worktree_clean") is not True: raise ValueError( "Canonical producer evidence must declare a clean worktree." ) - if producer.get("dirty_path_count") != 0: + if ( + not isinstance(producer.get("dirty_path_count"), int) + or isinstance(producer.get("dirty_path_count"), bool) + or producer.get("dirty_path_count") != 0 + ): raise ValueError( "Canonical producer evidence must declare zero dirty paths." ) - if not snapshot.coverage: + receipt_id = producer.get("receipt_id") + if not isinstance(receipt_id, str) or re.fullmatch( + r"sha256:[0-9a-f]{64}", receipt_id + ) is None: + raise ValueError("Producer receipt_id must be a SHA-256 identity.") + verified_at = _parse_datetime( + producer.get("verified_at"), "producer.verified_at" + ) + generated_at = _parse_datetime(payload.get("generated_at"), "generated_at") + if verified_at > generated_at: + raise ValueError("Producer evidence is future-dated.") + try: + normalized_producer = ProducerEvidence.from_dict(producer).to_dict() + except (TypeError, ValueError) as exc: + raise ValueError(f"Producer evidence is invalid: {exc}") from exc + if normalized_producer != producer: + raise ValueError("Producer evidence differs from its canonical shape.") + coverage = payload.get("coverage") + if not isinstance(coverage, list) or not coverage: raise ValueError("Portfolio truth coverage envelope is required.") - notion = ( - snapshot.inputs.get("notion") if isinstance(snapshot.inputs, dict) else None - ) + inputs = payload.get("inputs") + notion = inputs.get("notion") if isinstance(inputs, dict) else None if not isinstance(notion, dict): raise ValueError("Portfolio truth inputs.notion is required.") mode = notion.get("mode") @@ -145,11 +1891,11 @@ def _validate_contract_envelope(snapshot: PortfolioTruthSnapshot) -> None: if mode == "live" and notion.get("carried_from_generated_at") is not None: raise ValueError("Live Notion input cannot declare a carried-forward origin.") if mode == "verified-snapshot" and not notion.get("observed_at"): - raise ValueError("Verified Notion snapshot input requires an observation timestamp.") + raise ValueError( + "Verified Notion snapshot input requires an observation timestamp." + ) github_security = ( - snapshot.inputs.get("github_security") - if isinstance(snapshot.inputs, dict) - else None + inputs.get("github_security") if isinstance(inputs, dict) else None ) if isinstance(github_security, dict): receipt_id = github_security.get("receipt_id") diff --git a/src/producer_preflight.py b/src/producer_preflight.py index 475b98a6..3d73c222 100644 --- a/src/producer_preflight.py +++ b/src/producer_preflight.py @@ -3,20 +3,70 @@ import argparse import hashlib import json +import re import subprocess -from dataclasses import dataclass +from collections.abc import Callable +from dataclasses import dataclass, field from datetime import UTC, datetime from pathlib import Path from typing import Any from urllib.parse import urlparse -PREFLIGHT_SCHEMA_VERSION = "ghra_producer_preflight.v2" +PREFLIGHT_SCHEMA_VERSION = "ghra_producer_preflight.v3" +PREFLIGHT_PASS_CHECKS = { + "repository_identity": "pass", + "worktree_clean": "pass", + "expected_ref_available": "pass", + "head_matches_expected_ref": "pass", +} + + +def producer_evidence_receipt_id( + *, + repository: str, + expected_repository: str, + commit: str, + ref: str, + checkout_role: str, + checkout_path: str, + verified_at: str, +) -> str: + """Bind producer evidence to its exact serialized identity material.""" + material = json.dumps( + { + "checkout_path": checkout_path, + "checkout_role": checkout_role, + "commit": commit, + "expected_repository": expected_repository, + "ref": ref, + "repository": repository, + "verified_at": verified_at, + }, + ensure_ascii=False, + separators=(",", ":"), + sort_keys=True, + ) + return f"sha256:{hashlib.sha256(material.encode()).hexdigest()}" + + +def _producer_identity_text(payload: dict[str, Any], field_name: str) -> str: + value = payload.get(field_name) + if ( + not isinstance(value, str) + or not value.strip() + or re.search(r"[\x00-\x1f\x7f]", value) is not None + ): + raise ValueError( + f"Producer evidence {field_name} must be nonempty control-free text." + ) + return value @dataclass(frozen=True) class ProducerEvidence: repository: str + expected_repository: str commit: str ref: str checkout_role: str @@ -25,17 +75,20 @@ class ProducerEvidence: dirty_path_count: int verified_at: datetime receipt_id: str + _verified_at_text: str | None = field(default=None, repr=False, compare=False) def to_dict(self) -> dict[str, Any]: + verified_at = self._verified_at_text or self.verified_at.isoformat() return { "repository": self.repository, + "expected_repository": self.expected_repository, "commit": self.commit, "ref": self.ref, "checkout_role": self.checkout_role, "checkout_path": self.checkout_path, "worktree_clean": self.worktree_clean, "dirty_path_count": self.dirty_path_count, - "verified_at": self.verified_at.isoformat(), + "verified_at": verified_at, "receipt_id": self.receipt_id, } @@ -43,6 +96,7 @@ def to_dict(self) -> dict[str, Any]: def from_dict(cls, payload: dict[str, Any]) -> ProducerEvidence: required = { "repository", + "expected_repository", "commit", "ref", "checkout_role", @@ -55,7 +109,16 @@ def from_dict(cls, payload: dict[str, Any]) -> ProducerEvidence: missing = sorted(required - payload.keys()) if missing: raise ValueError(f"Producer evidence is missing fields: {missing}") - verified_at = str(payload["verified_at"]) + repository = _producer_identity_text(payload, "repository") + expected_repository = _producer_identity_text(payload, "expected_repository") + commit = _producer_identity_text(payload, "commit") + ref = _producer_identity_text(payload, "ref") + checkout_role = _producer_identity_text(payload, "checkout_role") + checkout_path = _producer_identity_text(payload, "checkout_path") + verified_at_text = _producer_identity_text(payload, "verified_at") + if not Path(checkout_path).is_absolute(): + raise ValueError("Producer evidence checkout_path must be absolute.") + verified_at = verified_at_text if verified_at.endswith("Z"): verified_at = f"{verified_at[:-1]}+00:00" try: @@ -64,23 +127,42 @@ def from_dict(cls, payload: dict[str, Any]) -> ProducerEvidence: raise ValueError("Producer evidence verified_at is not valid ISO-8601.") from exc if parsed_verified_at.tzinfo is None: raise ValueError("Producer evidence verified_at must include a timezone.") - commit = str(payload["commit"]) if len(commit) != 40 or any(char not in "0123456789abcdef" for char in commit): raise ValueError("Producer evidence commit must be a lowercase 40-character SHA.") if payload["worktree_clean"] is not True: raise ValueError("Producer evidence must declare a clean worktree.") if payload["dirty_path_count"] != 0: raise ValueError("Clean producer evidence must declare dirty_path_count=0.") + if repository != expected_repository: + raise ValueError( + "Producer evidence repository does not match expected_repository: " + f"observed={repository!r}; expected={expected_repository!r}" + ) + expected_receipt_id = producer_evidence_receipt_id( + repository=repository, + expected_repository=expected_repository, + commit=commit, + ref=ref, + checkout_role=checkout_role, + checkout_path=checkout_path, + verified_at=verified_at_text, + ) + if payload["receipt_id"] != expected_receipt_id: + raise ValueError( + "Producer evidence receipt_id does not match its serialized material." + ) return cls( - repository=str(payload["repository"]), + repository=repository, + expected_repository=expected_repository, commit=commit, - ref=str(payload["ref"]), - checkout_role=str(payload["checkout_role"]), - checkout_path=str(payload["checkout_path"]), + ref=ref, + checkout_role=checkout_role, + checkout_path=checkout_path, worktree_clean=True, dirty_path_count=0, verified_at=parsed_verified_at.astimezone(UTC), - receipt_id=str(payload["receipt_id"]), + receipt_id=expected_receipt_id, + _verified_at_text=verified_at_text, ) @@ -136,25 +218,53 @@ def inspect_canonical_producer( state = "pass" if all(value == "pass" for value in checks.values()) else "fail" verified_at = now or datetime.now(UTC) dirty_path_count = len(status.splitlines()) if status else 0 - receipt_material = "\n".join( - (repository, commit, expected_ref, checkout_role, str(repo_root.resolve()), verified_at.isoformat()) - ) + checkout_path = str(repo_root.resolve()) + verified_at_text = verified_at.isoformat() evidence = ProducerEvidence( repository=repository, + expected_repository=expected_repository, commit=commit, ref=expected_ref, checkout_role=checkout_role, - checkout_path=str(repo_root.resolve()), + checkout_path=checkout_path, worktree_clean=not status, dirty_path_count=dirty_path_count, verified_at=verified_at, - receipt_id=f"sha256:{hashlib.sha256(receipt_material.encode()).hexdigest()}", + receipt_id=producer_evidence_receipt_id( + repository=repository, + expected_repository=expected_repository, + commit=commit, + ref=expected_ref, + checkout_role=checkout_role, + checkout_path=checkout_path, + verified_at=verified_at_text, + ), ) return ProducerPreflightResult(state=state, checks=checks, evidence=evidence) def verify_evidence_still_current(repo_root: Path, evidence: ProducerEvidence) -> None: - current = _git(repo_root, "rev-parse", "HEAD") + try: + evidence = ProducerEvidence.from_dict(evidence.to_dict()) + except (TypeError, ValueError) as exc: + raise ValueError( + f"Producer evidence is invalid before currentness verification: {exc}" + ) from exc + repository = _verified_git_value( + repo_root, + "origin repository", + lambda: _origin_repository(repo_root), + ) + if repository != evidence.repository: + raise ValueError( + "Producer origin repository changed after preflight: " + f"verified={evidence.repository}; current={repository}" + ) + current = _verified_git_value( + repo_root, + "HEAD", + lambda: _git(repo_root, "rev-parse", "HEAD"), + ) if current != evidence.commit: raise ValueError( "Producer HEAD changed after preflight: " @@ -165,7 +275,21 @@ def verify_evidence_still_current(repo_root: Path, evidence: ProducerEvidence) - "Producer checkout changed after preflight: " f"verified={evidence.checkout_path}; current={repo_root.resolve()}" ) - status = _git(repo_root, "status", "--porcelain", "--untracked-files=all") + ref_commit = _verified_git_value( + repo_root, + f"ref {evidence.ref!r}", + lambda: _git(repo_root, "rev-parse", "--verify", evidence.ref), + ) + if ref_commit != evidence.commit: + raise ValueError( + "Producer ref changed after preflight: " + f"ref={evidence.ref}; verified={evidence.commit}; current={ref_commit}" + ) + status = _verified_git_value( + repo_root, + "worktree cleanliness", + lambda: _git(repo_root, "status", "--porcelain", "--untracked-files=all"), + ) if status: raise ValueError("Producer worktree became dirty after preflight.") @@ -188,9 +312,27 @@ def load_producer_evidence(path: Path) -> ProducerEvidence: raise ValueError( f"Producer evidence did not pass preflight: state={payload.get('state')!r}" ) + if payload.get("checks") != PREFLIGHT_PASS_CHECKS: + raise ValueError( + "Producer evidence checks must exactly match the v3 pass contract: " + f"declared={payload.get('checks')!r}; expected={PREFLIGHT_PASS_CHECKS!r}" + ) return ProducerEvidence.from_dict(payload) +def _verified_git_value( + repo_root: Path, + label: str, + operation: Callable[[], str], +) -> str: + try: + return operation() + except (OSError, subprocess.CalledProcessError) as exc: + raise ValueError( + f"Unable to verify producer {label} after preflight: {exc}" + ) from exc + + def _origin_repository(repo_root: Path) -> str: remote = _git(repo_root, "remote", "get-url", "origin") if remote.startswith("git@") and ":" in remote: diff --git a/tests/test_demo_portfolio.py b/tests/test_demo_portfolio.py index fe077c4d..cc18f992 100644 --- a/tests/test_demo_portfolio.py +++ b/tests/test_demo_portfolio.py @@ -10,12 +10,14 @@ import json from datetime import datetime, timedelta, timezone +from pathlib import Path from src.automation_proposals import VALID_ACTION_TYPES, VALID_STATUSES from src.demo_portfolio import ( DEMO_PROJECTS, FRESH_OFFSET_HOURS, HISTORY_POINTS, + STALE_RECEIPT_AGE_HOURS, build_projects, build_proposals, build_security_burndown, @@ -25,28 +27,114 @@ history_snapshots, resolved_coverage_state, ) -from src.github_security_coverage import GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION +from src.github_security_coverage import ( + GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION, + PROVIDER_NAMES, + _provider_result, +) +from src.portfolio_pathing import build_operating_path_entry +from src.portfolio_truth_provenance import REQUIRED_PROJECT_PROVENANCE_KEYS from src.portfolio_truth_types import ( SCHEMA_VERSION, + TRUTH_LATEST_FILENAME, VALID_ACTIVITY_STATUS, VALID_ATTENTION_STATES, + VALID_CATEGORY_TAGS, VALID_CONTEXT_QUALITY, ) +from src.portfolio_truth_reconcile import _build_security_fields +from src.portfolio_truth_validate import validate_truth_snapshot_payload # Portfolio Command Center reads anything older than this as no longer fresh. CONSUMER_FRESH_WINDOW_HOURS = 48 NOW = datetime(2026, 8, 1, 12, 0, tzinfo=timezone.utc) +DEMO_OUTPUT_DIR = Path("output/demo") def _snapshot() -> dict: return build_snapshot(fixture_generated_at(NOW)) +def _expected_inputs(snapshot: dict) -> dict: + return { + "catalog": { + "source_id": "portfolio-catalog", + "sha256": None, + "observed_at": snapshot["generated_at"], + }, + "workspace": { + "source_id": "projects-root", + "observed_at": snapshot["generated_at"], + }, + "notion": { + "mode": "unavailable", + "observed_at": None, + "carried_from_generated_at": None, + }, + "github_security": { + "source_id": "github-security-coverage-receipt", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "produced_at": snapshot["generated_at"], + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "a" * 40, + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": sum( + project["security"]["cohort_member"] + for project in snapshot["projects"] + ), + "path": "/demo-workspace/github-security-coverage.json", + "receipt_id": "sha256:" + "b" * 64, + "content_sha256": "b" * 64, + }, + } + + def test_schema_version_tracks_the_producer_constant() -> None: assert _snapshot()["schema_version"] == SCHEMA_VERSION +def test_envelope_collection_shapes_match_the_canonical_serializer() -> None: + snapshot = _snapshot() + + assert snapshot["inputs"] == _expected_inputs(snapshot) + assert snapshot["exclusions"] == { + "policy_version": "workspace_discovery.v2", + "counts": {}, + } + assert snapshot["producer"] == {} + validate_truth_snapshot_payload( + snapshot, + allow_synthetic_security_matrix=True, + ) + + +def test_committed_demo_truth_artifacts_match_the_canonical_envelope() -> None: + paths = [DEMO_OUTPUT_DIR / TRUTH_LATEST_FILENAME] + paths.extend( + DEMO_OUTPUT_DIR / f"portfolio-truth-history-{index:02d}.json" + for index in range(1, HISTORY_POINTS + 1) + ) + + for path in paths: + snapshot = json.loads(path.read_text()) + assert snapshot["inputs"] == _expected_inputs(snapshot) + assert snapshot["exclusions"] == { + "policy_version": "workspace_discovery.v2", + "counts": {}, + } + assert snapshot["producer"] == {} + validate_truth_snapshot_payload( + snapshot, + allow_synthetic_security_matrix=True, + ) + + raw = path.read_text().lower() + for forbidden in ("/users/", "saagpatel", "saagar", "@gmail.com", "gmail"): + assert forbidden not in raw + + def test_generated_at_lands_inside_the_consumer_fresh_window() -> None: generated_at = datetime.fromisoformat(_snapshot()["generated_at"]) age_hours = (NOW - generated_at).total_seconds() / 3600 @@ -69,6 +157,11 @@ def test_every_project_uses_known_enum_values() -> None: assert derived["attention_state"] in VALID_ATTENTION_STATES assert derived["activity_status"] in VALID_ACTIVITY_STATUS assert derived["context_quality"] in VALID_CONTEXT_QUALITY + assert project["declared"]["category"] in VALID_CATEGORY_TAGS + if derived["attention_state"] == "active-infra": + assert project["declared"]["category"] == "infrastructure" + if derived["attention_state"] == "active-product": + assert project["declared"]["category"] == "commercial" assert project["risk"]["risk_tier"] in { "elevated", "moderate", @@ -77,6 +170,68 @@ def test_every_project_uses_known_enum_values() -> None: } +def test_every_demo_path_matches_the_production_path_helper() -> None: + for project in _snapshot()["projects"]: + declared = project["declared"] + derived = project["derived"] + expected = build_operating_path_entry( + {**declared, "has_explicit_entry": True}, + context_quality=derived["context_quality"], + archived=derived["archived"], + ) + + assert expected["operating_path_source"] == "explicit-operating-path" + assert declared["operating_path"] == expected["operating_path"] + assert derived["path_override"] == expected["path_override"] + assert derived["path_confidence"] == expected["path_confidence"] + assert derived["path_rationale"] == expected["path_rationale"] + + +def test_demo_path_matrix_covers_low_and_high_confidence_semantics() -> None: + projects = { + project["identity"]["display_name"]: project + for project in _snapshot()["projects"] + } + dovetail = projects["Dovetail Forge"] + quartz = projects["Quartz Signal"] + + assert dovetail["derived"]["context_quality"] == "boilerplate" + assert dovetail["derived"]["path_confidence"] == "low" + assert dovetail["derived"]["path_override"] == "investigate" + assert dovetail["risk"]["path_risk"] is True + assert quartz["derived"]["context_quality"] == "full" + assert quartz["derived"]["path_confidence"] == "high" + assert quartz["derived"]["path_override"] == "" + assert quartz["risk"]["path_risk"] is False + + +def test_every_demo_row_carries_meaningful_production_shaped_provenance() -> None: + for project in _snapshot()["projects"]: + provenance = project["provenance"] + assert REQUIRED_PROJECT_PROVENANCE_KEYS <= provenance.keys() + assert all( + provenance[key]["source"].strip() + for key in REQUIRED_PROJECT_PROVENANCE_KEYS + ) + assert ( + provenance["derived.activity_status"]["detail"] + == project["derived"]["activity_status"] + ) + assert provenance["derived.archived"]["detail"] == str( + project["derived"]["archived"] + ).lower() + assert ( + provenance["derived.context_quality"]["detail"] + == project["derived"]["context_quality"] + ) + assert provenance["derived.context_files"]["detail"] == str( + len(project["derived"]["context_files"]) + ) + assert provenance["derived.stack"]["detail"] == ", ".join( + project["derived"]["stack"] + ) + + def test_coverage_states_span_the_whole_receipt_model() -> None: states = [resolved_coverage_state(p["security"]) for p in _snapshot()["projects"]] @@ -102,6 +257,35 @@ def test_declared_complete_rows_survive_the_consumer_receipt_gate() -> None: assert resolved_coverage_state(security) == "complete" +def test_stale_rows_are_older_than_the_receipt_freshness_window() -> None: + snapshot = _snapshot() + generated_at = datetime.fromisoformat(snapshot["generated_at"]) + + for project in snapshot["projects"]: + security = project["security"] + if security["coverage_state"] != "stale": + continue + source_produced_at = datetime.fromisoformat(security["source_produced_at"]) + age_hours = (generated_at - source_produced_at).total_seconds() / 3600 + + assert age_hours == STALE_RECEIPT_AGE_HOURS + assert age_hours > 24 + assert set(security["providers"]) == set(PROVIDER_NAMES) + for name in PROVIDER_NAMES: + assert security["providers"][name] == _provider_result( + name, + state="stale", + observed_at=security["source_produced_at"], + http_status=200, + reason="receipt_stale", + pagination_complete=True, + conditional_request=True, + conditional_result="modified", + http_classification="success", + ) + assert _build_security_fields(security).to_dict() == security + + def test_unknown_rows_carry_no_receipt_evidence() -> None: for project in _snapshot()["projects"]: security = project["security"] @@ -133,6 +317,31 @@ def test_rollups_agree_with_the_project_records() -> None: ) +def test_risk_text_and_tiers_use_canonical_dependabot_alert_counts() -> None: + snapshot = _snapshot() + repos_with_open_high_critical = 0 + + for project in snapshot["projects"]: + security = project["security"] + risk = project["risk"] + canonical_count = (security["dependabot_critical"] or 0) + ( + security["dependabot_high"] or 0 + ) + factor = "active-high-severity-alerts" + + assert security["open_high_critical"] == canonical_count + assert risk["security_risk"] is (canonical_count > 0) + assert (factor in risk["risk_factors"]) is (canonical_count > 0) + if canonical_count > 0: + repos_with_open_high_critical += 1 + if (security["dependabot_critical"] or 0) > 0: + assert risk["risk_tier"] == "elevated" + + assert snapshot["rollups"]["security"][ + "repos_with_open_high_critical" + ] == repos_with_open_high_critical + + def test_attention_state_counts_match_the_project_records() -> None: snapshot = _snapshot() counts = snapshot["source_summary"]["attention_state_counts"] @@ -153,6 +362,11 @@ def test_history_gives_the_trends_view_a_real_curve() -> None: assert timestamps == sorted(timestamps) assert len(set(timestamps)) == len(timestamps) assert all(s["schema_version"] == SCHEMA_VERSION for _, s in snapshots) + for _, snapshot in snapshots: + validate_truth_snapshot_payload( + snapshot, + allow_synthetic_security_matrix=True, + ) # Backlog pressure decays toward the present, so the curve actually moves. open_high = [s["rollups"]["security"]["total_open_high"] for _, s in snapshots] diff --git a/tests/test_github_security_coverage.py b/tests/test_github_security_coverage.py index 818a152d..2afb58de 100644 --- a/tests/test_github_security_coverage.py +++ b/tests/test_github_security_coverage.py @@ -3,6 +3,7 @@ import json import subprocess import sys +from copy import deepcopy from datetime import datetime, timedelta, timezone from pathlib import Path from typing import Any @@ -13,12 +14,18 @@ DEFAULT_BASE_REQUEST_LIMIT, DEFAULT_EXPECTED_GITHUB_COHORT_COUNT, GITHUB_SECURITY_RECEIPT_FILENAME, + PROVIDER_STATES, SecurityCoverageError, + _provider_result, + _remote_repository_result, + _valid_git_branch, + _valid_git_upstream, collect_security_coverage, derive_default_attention_cohort, load_security_coverage_receipt, main, security_coverage_receipt_writer, + validate_normalized_security_provider, validate_security_coverage_receipt, verified_security_coverage_receipt_binding, write_security_coverage_receipt, @@ -36,6 +43,536 @@ ).read_text() ) +NORMALIZED_PROVIDER_STATE_FIXTURES = { + "observed": { + "observed_at": NOW.isoformat(), + "http_status": 200, + "pagination_complete": True, + "counts": {"critical": 0, "high": 0, "medium": 0, "low": 0}, + }, + "not_requested": {"reason": "collection_halted"}, + "credential_unavailable": { + "observed_at": NOW.isoformat(), + "reason": "github_authentication_missing", + }, + "forbidden": { + "observed_at": NOW.isoformat(), + "http_status": 403, + "reason": "github_forbidden", + "conditional_result": "failed", + }, + "feature_unavailable": { + "observed_at": NOW.isoformat(), + "http_status": 403, + "reason": "code_scanning_not_enabled", + "conditional_result": "failed", + }, + "not_found": { + "observed_at": NOW.isoformat(), + "http_status": 404, + "reason": "github_not_found", + "conditional_result": "failed", + }, + "gone": { + "observed_at": NOW.isoformat(), + "http_status": 410, + "reason": "github_gone", + "conditional_result": "failed", + }, + "rate_limited": { + "observed_at": NOW.isoformat(), + "http_status": 429, + "reason": "github_rate_limit", + "conditional_result": "failed", + }, + "transient_error": { + "observed_at": NOW.isoformat(), + "reason": "network_error", + "conditional_result": "failed", + }, + "malformed": { + "observed_at": NOW.isoformat(), + "http_status": 200, + "reason": "non_list_or_invalid_alert_payload", + "conditional_result": "malformed", + }, + "stale": { + "observed_at": NOW.isoformat(), + "http_status": 200, + "reason": "receipt_stale", + "pagination_complete": True, + }, +} + + +@pytest.mark.parametrize("state", sorted(PROVIDER_STATES)) +def test_normalized_provider_state_fixture_matches_production_constructor( + state: str, +) -> None: + assert set(NORMALIZED_PROVIDER_STATE_FIXTURES) == set(PROVIDER_STATES) + provider_name = "code_scanning" if state == "feature_unavailable" else "dependabot" + provider = _provider_result( + provider_name, + state=state, + **NORMALIZED_PROVIDER_STATE_FIXTURES[state], + ) + + assert validate_normalized_security_provider(provider_name, provider) == provider + + +@pytest.mark.parametrize( + ("provider", "state", "kwargs"), + ( + *( + ("dependabot", "not_requested", {"reason": reason}) + for reason in ( + "authentication_missing", + "base_request_limit", + "collection_halted", + "fixture_not_requested", + "quota_reserve", + "rate_limited", + "total_request_limit", + ) + ), + ( + "dependabot", + "not_requested", + { + "observed_at": NOW.isoformat(), + "reason": "quota_reserve_before_pagination_complete", + "conditional_request": True, + "conditional_result": "incomplete", + }, + ), + ( + "dependabot", + "credential_unavailable", + { + "observed_at": NOW.isoformat(), + "http_status": 401, + "reason": "github_authentication_missing", + "conditional_result": "failed", + }, + ), + ( + "dependabot", + "forbidden", + { + "observed_at": NOW.isoformat(), + "http_status": 403, + "reason": "github_forbidden", + "conditional_result": "failed", + }, + ), + ( + "code_scanning", + "feature_unavailable", + { + "observed_at": NOW.isoformat(), + "http_status": 403, + "reason": "code_scanning_not_enabled", + "conditional_result": "failed", + }, + ), + ( + "secret_scanning", + "feature_unavailable", + { + "observed_at": NOW.isoformat(), + "http_status": 200, + "http_classification": "eligibility", + "reason": "private_user_repo_plan_unavailable", + }, + ), + ( + "dependabot", + "not_found", + { + "observed_at": NOW.isoformat(), + "http_status": 404, + "reason": "github_not_found", + "conditional_result": "failed", + }, + ), + ( + "dependabot", + "gone", + { + "observed_at": NOW.isoformat(), + "http_status": 410, + "reason": "github_gone", + "conditional_result": "failed", + }, + ), + *( + ( + "dependabot", + "rate_limited", + { + "observed_at": NOW.isoformat(), + "http_status": status, + "reason": "github_rate_limit", + "conditional_result": "failed", + }, + ) + for status in (403, 429) + ), + ( + "dependabot", + "transient_error", + { + "observed_at": NOW.isoformat(), + "reason": "network_error", + "conditional_result": "failed", + }, + ), + ( + "dependabot", + "transient_error", + { + "observed_at": NOW.isoformat(), + "http_status": 503, + "reason": "github_http_503", + "conditional_result": "failed", + }, + ), + ( + "dependabot", + "malformed", + { + "observed_at": NOW.isoformat(), + "http_status": 304, + "reason": "conditional_response_without_observed_prior", + "conditional_request": True, + "conditional_result": "invalid_prior", + }, + ), + ( + "dependabot", + "malformed", + { + "observed_at": NOW.isoformat(), + "http_status": 418, + "reason": "unexpected_http_418", + "conditional_result": "failed", + }, + ), + ), +) +def test_production_provider_reason_matrix_is_constructor_validated( + provider: str, + state: str, + kwargs: dict[str, Any], +) -> None: + result = _provider_result(provider, state=state, **kwargs) + + assert validate_normalized_security_provider(provider, result) == result + + +def test_provider_rejects_coherently_fabricated_failure_reason() -> None: + provider = _provider_result( + "code_scanning", + state="not_found", + observed_at=NOW.isoformat(), + http_status=404, + reason="github_not_found", + conditional_result="failed", + ) + provider["reason"] = "fabricated_reason" + provider["http_classification"] = "fabricated_reason" + + with pytest.raises(SecurityCoverageError, match="producer reason domain"): + validate_normalized_security_provider("code_scanning", provider) + + +@pytest.mark.parametrize( + ("provider", "state", "kwargs"), + ( + ( + "dependabot", + "observed", + { + "observed_at": NOW.isoformat(), + "http_status": 200, + "pagination_complete": True, + "counts": {"critical": 0, "high": 0, "medium": 0, "low": 0}, + }, + ), + ( + "dependabot", + "observed", + { + "observed_at": NOW.isoformat(), + "http_status": 200, + "pagination_complete": True, + "counts": {"critical": 0, "high": 0, "medium": 0, "low": 0}, + "conditional_request": True, + "conditional_result": "modified", + }, + ), + ( + "dependabot", + "observed", + { + "observed_at": NOW.isoformat(), + "http_status": 304, + "reason": "not_modified", + "pagination_complete": True, + "counts": {"critical": 0, "high": 0, "medium": 0, "low": 0}, + "conditional_request": True, + "conditional_result": "not_modified", + }, + ), + ( + "dependabot", + "not_requested", + {"reason": "collection_halted"}, + ), + ( + "dependabot", + "not_requested", + { + "reason": "base_request_limit", + "conditional_request": True, + "conditional_result": "incomplete", + }, + ), + ( + "dependabot", + "credential_unavailable", + { + "observed_at": NOW.isoformat(), + "reason": "github_authentication_missing", + }, + ), + ( + "dependabot", + "credential_unavailable", + { + "observed_at": NOW.isoformat(), + "http_status": 401, + "reason": "github_authentication_missing", + "conditional_request": True, + "conditional_result": "failed", + }, + ), + ( + "code_scanning", + "feature_unavailable", + { + "observed_at": NOW.isoformat(), + "http_status": 200, + "http_classification": "eligibility", + "reason": "private_user_repo_plan_unavailable", + }, + ), + ( + "code_scanning", + "not_found", + { + "observed_at": NOW.isoformat(), + "http_status": 404, + "reason": "github_not_found", + "conditional_request": True, + "conditional_result": "failed", + }, + ), + ( + "dependabot", + "transient_error", + { + "observed_at": NOW.isoformat(), + "reason": "network_error", + "conditional_result": "failed", + }, + ), + ( + "dependabot", + "malformed", + { + "observed_at": NOW.isoformat(), + "http_status": 200, + "reason": "non_list_or_invalid_alert_payload", + "conditional_result": "malformed", + }, + ), + ( + "dependabot", + "malformed", + { + "observed_at": NOW.isoformat(), + "http_status": 304, + "reason": "conditional_response_without_observed_prior", + "conditional_request": True, + "conditional_result": "invalid_prior", + }, + ), + ( + "dependabot", + "malformed", + { + "observed_at": NOW.isoformat(), + "http_status": 418, + "reason": "unexpected_http_418", + "conditional_result": "failed", + }, + ), + ), +) +def test_provider_conditional_matrix_accepts_producer_paths( + provider: str, + state: str, + kwargs: dict[str, Any], +) -> None: + result = _provider_result(provider, state=state, **kwargs) + + assert validate_normalized_security_provider(provider, result) == result + + +def test_stale_remote_constructor_requires_observation_time() -> None: + with pytest.raises(SecurityCoverageError, match="observed_at.*stale"): + _remote_repository_result(state="stale", reason="receipt_stale") + + +@pytest.mark.parametrize( + ("state", "mutation", "message"), + ( + ( + "not_found", + lambda value: value.update( + http_status=200, + http_classification="success", + ), + "not_found requires HTTP 404", + ), + ( + "not_found", + lambda value: value.pop("conditional"), + "missing fields", + ), + ( + "stale", + lambda value: value.update(observed_at=None), + "observed_at is required", + ), + ( + "not_found", + lambda value: value.update(observed_at="not-a-timestamp"), + "observed_at is invalid", + ), + ( + "not_found", + lambda value: value.update(http_classification="success"), + "http_classification", + ), + ( + "not_found", + lambda value: value.update(pagination_complete=True), + "cannot claim complete pagination", + ), + ), +) +def test_normalized_provider_state_machine_rejects_impossible_envelopes( + state: str, + mutation: Any, + message: str, +) -> None: + provider = _provider_result( + "dependabot", + state=state, + **NORMALIZED_PROVIDER_STATE_FIXTURES[state], + ) + tampered = deepcopy(provider) + mutation(tampered) + + with pytest.raises(SecurityCoverageError, match=message): + validate_normalized_security_provider("dependabot", tampered) + + +def test_normalized_provider_freshness_honors_configured_window() -> None: + observed_at = NOW - timedelta(hours=30) + observed = _provider_result( + "dependabot", + state="observed", + observed_at=observed_at.isoformat(), + http_status=200, + pagination_complete=True, + counts={"critical": 0, "high": 0, "medium": 0, "low": 0}, + ) + + assert validate_normalized_security_provider( + "dependabot", + observed, + produced_at=observed_at, + current=NOW, + max_age_hours=48, + ) == observed + with pytest.raises(SecurityCoverageError, match="freshness window"): + validate_normalized_security_provider( + "dependabot", + observed, + produced_at=observed_at, + current=NOW, + max_age_hours=24, + ) + + +def test_normalized_stale_provider_requires_receipt_or_provider_age() -> None: + recent_stale = _provider_result( + "dependabot", + state="stale", + observed_at=NOW.isoformat(), + http_status=200, + pagination_complete=True, + reason="receipt_stale", + ) + old_stale = deepcopy(recent_stale) + old_stale["observed_at"] = (NOW - timedelta(hours=30)).isoformat() + + assert validate_normalized_security_provider( + "dependabot", + recent_stale, + produced_at=NOW, + current=NOW, + max_age_hours=24, + receipt_is_stale=True, + ) == recent_stale + assert validate_normalized_security_provider( + "dependabot", + old_stale, + produced_at=NOW, + current=NOW, + max_age_hours=24, + ) == old_stale + with pytest.raises(SecurityCoverageError, match="not justified"): + validate_normalized_security_provider( + "dependabot", + recent_stale, + produced_at=NOW, + current=NOW, + max_age_hours=24, + ) + + +def test_normalized_unavailable_provider_preserves_old_observation() -> None: + unavailable = _provider_result( + "dependabot", + state="not_found", + observed_at=(NOW - timedelta(hours=30)).isoformat(), + http_status=404, + reason="github_not_found", + conditional_result="failed", + ) + + assert validate_normalized_security_provider( + "dependabot", + unavailable, + produced_at=NOW, + current=NOW, + max_age_hours=24, + ) == unavailable + def _truth(count: int = 16) -> dict[str, Any]: attention = ("active-product", "active-infra", "decision-needed") @@ -199,7 +736,7 @@ def _remote_graphql_response(count: int) -> _Response: "isArchived": False, "defaultBranchRef": { "name": "main", - "target": {"oid": f"{index:040x}"}, + "target": {"oid": f"{index + 1:040x}"}, }, } for index in range(count) @@ -372,7 +909,6 @@ def test_current_nine_repository_cut_binds_remote_branch_and_head() -> None: _remote_graphql_response(DEFAULT_EXPECTED_GITHUB_COHORT_COUNT), ] ) - receipt = _collect( session=session, cohort_count=DEFAULT_EXPECTED_GITHUB_COHORT_COUNT, @@ -389,6 +925,173 @@ def test_current_nine_repository_cut_binds_remote_branch_and_head() -> None: ) +@pytest.mark.parametrize( + ("branch", "head_sha"), + (("main", "a" * 40), ("feature/release-1.2", "b" * 64), ("@", "c" * 40)), +) +def test_remote_repository_accepts_canonical_git_tokens( + branch: str, + head_sha: str, +) -> None: + receipt = _collect() + receipt["repositories"]["owner/repo-00"]["repository"] = ( + _remote_repository_result( + state="observed", + observed_at=NOW.isoformat(), + default_branch=branch, + head_sha=head_sha, + archived=False, + ) + ) + + loaded = validate_security_coverage_receipt( + receipt, + expected_cohort_count=16, + now=NOW, + ) + + assert ( + loaded.entries_by_full_name["owner/repo-00"]["repository"]["head_sha"] + == head_sha + ) + + +@pytest.mark.parametrize( + ("state", "reason"), + ( + ("partial", "default_branch_head_unavailable"), + ("not_requested", "authentication_missing"), + ("not_requested", "base_request_limit"), + ("not_requested", "quota_reserve"), + ("not_requested", "rate_limited"), + ("not_requested", "remote_observation_not_in_receipt"), + ("not_requested", "total_request_limit"), + ("credential_unavailable", "github_authentication_missing"), + ("credential_unavailable", "github_graphql_authentication_missing"), + ("forbidden", "github_forbidden"), + ("forbidden", "github_graphql_forbidden"), + ("not_found", "github_graphql_repository_not_found"), + ("not_found", "repository_not_returned"), + ("rate_limited", "github_graphql_rate_limited"), + ("rate_limited", "github_rate_limit"), + ("transient_error", "network_error"), + ("transient_error", "github_http_503"), + ("malformed", "github_gone"), + ("malformed", "github_graphql_error"), + ("malformed", "github_not_found"), + ("malformed", "non_object_payload"), + ("malformed", "repository_archived_state_invalid"), + ("malformed", "repository_identity_mismatch"), + ("malformed", "unexpected_http_418"), + ("stale", "receipt_stale"), + ), +) +def test_production_remote_reason_matrix_is_constructor_validated( + state: str, + reason: str, +) -> None: + result = _remote_repository_result( + state=state, + reason=reason, + observed_at=NOW.isoformat() if state != "not_requested" else None, + archived=False if state == "partial" else None, + ) + + assert result["reason"] == reason + + +@pytest.mark.parametrize( + ("field", "value", "message"), + ( + ("head_sha", "a" * 41, "head_sha"), + ("head_sha", "0" * 40, "head_sha"), + ("head_sha", "A" * 40, "head_sha"), + ("default_branch", "has space", "default_branch"), + ("default_branch", "main.lock", "default_branch"), + ("default_branch", "feature..topic", "default_branch"), + ("default_branch", "HEAD", "default_branch"), + ), +) +def test_remote_repository_rejects_impossible_git_tokens( + field: str, + value: str, + message: str, +) -> None: + receipt = _collect() + repository = _remote_repository_result( + state="observed", + observed_at=NOW.isoformat(), + default_branch="main", + head_sha="a" * 40, + archived=False, + ) + repository[field] = value + receipt["repositories"]["owner/repo-00"]["repository"] = repository + + with pytest.raises(SecurityCoverageError, match=message): + validate_security_coverage_receipt( + receipt, + expected_cohort_count=16, + now=NOW, + ) + + +@pytest.mark.parametrize( + "branch", + ( + "main", + "feature/topic", + "release-1.2", + "@", + "HEAD", + "-topic", + ".hidden", + "feature/.hidden", + "main.lock", + "feature..topic", + "feature@{topic", + "feature//topic", + "feature/topic.", + "has space", + "feature\\topic", + ), +) +def test_shared_branch_validator_matches_git_check_ref_format(branch: str) -> None: + git_accepts = subprocess.run( + ["git", "check-ref-format", "--branch", branch], + check=False, + capture_output=True, + text=True, + ).returncode == 0 + + assert _valid_git_branch(branch) is git_accepts + + +@pytest.mark.parametrize( + "upstream", + ( + "topic", + "origin/main", + "upstream/feature/topic", + "@/main", + "bad~remote/main", + "../main", + "origin/main.lock", + "origin/has space", + "origin/feature..topic", + ), +) +def test_shared_upstream_validator_matches_git_ref_format(upstream: str) -> None: + git_accepts = subprocess.run( + ["git", "check-ref-format", f"refs/remotes/{upstream}"], + check=False, + capture_output=True, + text=True, + ).returncode == 0 + + assert _valid_git_upstream(upstream) is git_accepts + + def test_graphql_rate_limit_marks_remote_cut_with_exact_reason_code() -> None: outcome = OUTCOME_FIXTURES["rate_limited"] session = _Session( diff --git a/tests/test_portfolio_repository_state.py b/tests/test_portfolio_repository_state.py index d841e067..3e8a3b5f 100644 --- a/tests/test_portfolio_repository_state.py +++ b/tests/test_portfolio_repository_state.py @@ -1,11 +1,20 @@ from __future__ import annotations import subprocess +from copy import deepcopy from datetime import UTC, datetime from pathlib import Path from typing import Any -from src.portfolio_repository_state import observe_repository_state +import pytest + +from src.portfolio_repository_state import ( + _local_from_worktree, + _observed_result, + _select_remote_default_worktree, + observe_repository_state, +) +from src.portfolio_truth_validate import _validate_repository_state_shape def _git(path: Path, *args: str) -> str: @@ -66,9 +75,159 @@ def test_observation_reports_dirty_no_upstream_and_unknown_remote( assert state["local"]["dirty"] is True assert state["local"]["dirty_path_count"] == 1 assert state["local"]["upstream"] is None + assert state["local"]["upstream_branch"] is None + assert state["local"]["upstream_remote"] is None + assert state["worktrees"][0]["upstream"] is None + assert state["worktrees"][0]["upstream_branch"] is None + assert state["worktrees"][0]["upstream_remote"] is None assert state["remote_default_branch"]["state"] == "unknown" +def test_local_branch_upstream_is_observed_and_divergence_fails_closed( + tmp_path: Path, +) -> None: + repo = _repo(tmp_path) + _git(repo, "branch", "topic") + _git(repo, "config", "branch.main.remote", ".") + _git(repo, "config", "branch.main.merge", "refs/heads/topic") + assert _git(repo, "rev-parse", "--abbrev-ref", "@{upstream}") == "topic" + + observed_at = datetime(2026, 7, 12, tzinfo=UTC) + state = observe_repository_state(repo, observed_at=observed_at) + + assert state["local"]["upstream"] == "topic" + assert state["local"]["upstream_branch"] == "topic" + assert state["local"]["upstream_remote"] == "." + assert state["state"] == "unknown" + assert ( + state["reason_code"] + == "nonstandard_upstream_requires_remote_default_evidence" + ) + _validate_repository_state_shape( + state, + expected_remote=state["remote_default_branch"], + project_key="fixture/local-upstream", + generated_at=observed_at, + ) + + +def test_slash_branch_tracking_same_local_branch_stays_observed( + tmp_path: Path, +) -> None: + repo = _repo(tmp_path) + _git(repo, "checkout", "-b", "feature/foo") + _git(repo, "config", "branch.feature/foo.remote", ".") + _git(repo, "config", "branch.feature/foo.merge", "refs/heads/feature/foo") + assert _git(repo, "rev-parse", "--abbrev-ref", "@{upstream}") == "feature/foo" + + observed_at = datetime(2026, 7, 12, tzinfo=UTC) + state = observe_repository_state(repo, observed_at=observed_at) + + assert state["state"] == "observed" + assert state["local"]["branch"] == "feature/foo" + assert state["local"]["upstream"] == "feature/foo" + assert state["local"]["upstream_branch"] == "feature/foo" + assert state["local"]["upstream_remote"] == "." + _validate_repository_state_shape( + state, + expected_remote=state["remote_default_branch"], + project_key="fixture/matching-local-slash-upstream", + generated_at=observed_at, + ) + + +def test_branch_tracking_different_local_slash_branch_is_unknown( + tmp_path: Path, +) -> None: + repo = _repo(tmp_path) + _git(repo, "branch", "feature/foo") + _git(repo, "checkout", "-b", "foo") + _git(repo, "config", "branch.foo.remote", ".") + _git(repo, "config", "branch.foo.merge", "refs/heads/feature/foo") + assert _git(repo, "rev-parse", "--abbrev-ref", "@{upstream}") == "feature/foo" + + state = observe_repository_state( + repo, observed_at=datetime(2026, 7, 12, tzinfo=UTC) + ) + + assert state["state"] == "unknown" + assert state["local"]["branch"] == "foo" + assert state["local"]["upstream"] == "feature/foo" + assert state["local"]["upstream_branch"] == "feature/foo" + assert state["local"]["upstream_remote"] == "." + assert ( + state["reason_code"] + == "nonstandard_upstream_requires_remote_default_evidence" + ) + + +@pytest.mark.parametrize("remote_name", ("origin", "team/origin")) +def test_remote_slash_branch_preserves_display_and_exact_branch( + tmp_path: Path, + remote_name: str, +) -> None: + repo = _repo(tmp_path) + _git(repo, "checkout", "-b", "feature/foo") + _git(repo, "remote", "add", remote_name, str(repo)) + _git(repo, "update-ref", f"refs/remotes/{remote_name}/feature/foo", "HEAD") + _git(repo, "config", "branch.feature/foo.remote", remote_name) + _git(repo, "config", "branch.feature/foo.merge", "refs/heads/feature/foo") + expected_upstream = f"{remote_name}/feature/foo" + assert _git(repo, "rev-parse", "--abbrev-ref", "@{upstream}") == ( + expected_upstream + ) + + observed_at = datetime(2026, 7, 12, tzinfo=UTC) + state = observe_repository_state(repo, observed_at=observed_at) + + assert state["state"] == "observed" + assert state["local"]["upstream"] == expected_upstream + assert state["local"]["upstream_branch"] == "feature/foo" + assert state["local"]["upstream_remote"] == remote_name + _validate_repository_state_shape( + state, + expected_remote=state["remote_default_branch"], + project_key="fixture/matching-remote-slash-upstream", + generated_at=observed_at, + ) + + +def test_custom_fetch_refspec_serializes_configured_upstream_identity( + tmp_path: Path, +) -> None: + repo = _repo(tmp_path) + _git(repo, "checkout", "-b", "feature/foo") + _git(repo, "remote", "add", "origin", str(repo)) + _git( + repo, + "config", + "remote.origin.fetch", + "+refs/heads/*:refs/custom/origin/*", + ) + _git(repo, "fetch", "origin") + _git(repo, "config", "branch.feature/foo.remote", "origin") + _git(repo, "config", "branch.feature/foo.merge", "refs/heads/feature/foo") + assert _git(repo, "rev-parse", "--abbrev-ref", "@{upstream}") == ( + "custom/origin/feature/foo" + ) + + observed_at = datetime(2026, 7, 12, tzinfo=UTC) + state = observe_repository_state(repo, observed_at=observed_at) + + assert state["state"] == "observed" + assert state["local"]["upstream"] == "origin/feature/foo" + assert state["local"]["upstream_branch"] == "feature/foo" + assert state["local"]["upstream_remote"] == "origin" + assert state["local"]["ahead"] == 0 + assert state["local"]["behind"] == 0 + _validate_repository_state_shape( + state, + expected_remote=state["remote_default_branch"], + project_key="fixture/custom-fetch-refspec", + generated_at=observed_at, + ) + + def test_observation_reports_linked_worktree_without_file_names(tmp_path: Path) -> None: repo = _repo(tmp_path) linked = tmp_path / "linked" @@ -86,6 +245,57 @@ def test_observation_reports_linked_worktree_without_file_names(tmp_path: Path) assert "untracked.txt" not in str(state) +def test_unborn_linked_worktree_normalizes_zero_head_and_validates( + tmp_path: Path, +) -> None: + repo = _repo(tmp_path) + orphan = tmp_path / "orphan" + _git(repo, "worktree", "add", "--orphan", str(orphan)) + orphan_block = next( + block + for block in _git(repo, "worktree", "list", "--porcelain").split("\n\n") + if f"worktree {orphan}" in block + ) + raw_head = next( + line.removeprefix("HEAD ") + for line in orphan_block.splitlines() + if line.startswith("HEAD ") + ) + assert len(raw_head) in {40, 64} + assert set(raw_head) == {"0"} + + observed_at = datetime(2026, 7, 12, tzinfo=UTC) + state = observe_repository_state(repo, observed_at=observed_at) + orphan_state = next( + item for item in state["worktrees"] if item["path"] == str(orphan) + ) + + assert state["state"] == "observed" + assert orphan_state["state"] == "unknown" + assert orphan_state["reason_code"] == "worktree_observation_failed" + assert orphan_state["head"] is None + assert orphan_state["branch"] == "orphan" + assert orphan_state["detached"] is False + _validate_repository_state_shape( + state, + expected_remote=state["remote_default_branch"], + project_key="fixture/unborn-worktree", + generated_at=observed_at, + ) + + tampered = deepcopy(state) + next( + item for item in tampered["worktrees"] if item["path"] == str(orphan) + )["head"] = raw_head + with pytest.raises(ValueError, match="worktree 1"): + _validate_repository_state_shape( + tampered, + expected_remote=state["remote_default_branch"], + project_key="fixture/unborn-worktree", + generated_at=observed_at, + ) + + def test_dangling_bare_head_uses_clean_matching_linked_worktree( tmp_path: Path, ) -> None: @@ -109,6 +319,13 @@ def test_dangling_bare_head_uses_clean_matching_linked_worktree( assert state["local"]["head"] == head assert state["local"]["dirty"] is False + _validate_repository_state_shape( + state, + expected_remote=state["remote_default_branch"], + project_key="fixture/bare-coordinator", + generated_at=datetime(2026, 7, 12, tzinfo=UTC), + ) + def test_bare_coordinator_selects_unique_clean_remote_default_worktree( tmp_path: Path, @@ -184,6 +401,8 @@ def test_recovery_tracking_does_not_impersonate_remote_default( assert state["reason_code"] == "remote_default_worktree_not_found" assert state["local"]["head"] == recovery_head assert state["local"]["upstream"] == "origin/recovery/repo-main" + assert state["local"]["upstream_branch"] == "recovery/repo-main" + assert state["local"]["upstream_remote"] == "origin" assert state["remote_default_branch"]["head_sha"] == remote_head @@ -205,6 +424,89 @@ def test_bare_coordinator_missing_remote_evidence_is_precise_unknown( assert state["topology"]["selection"]["candidate_count"] == 0 assert "local" not in state + _validate_repository_state_shape( + state, + expected_remote=state["remote_default_branch"], + project_key="fixture/bare-unknown", + generated_at=datetime(2026, 7, 12, tzinfo=UTC), + ) + tampered = deepcopy(state) + tampered["local"] = None + with pytest.raises(ValueError, match="omit null local"): + _validate_repository_state_shape( + tampered, + expected_remote=state["remote_default_branch"], + project_key="fixture/bare-unknown", + generated_at=datetime(2026, 7, 12, tzinfo=UTC), + ) + + +def test_remote_selection_can_choose_linked_when_configured_worktree_is_unknown() -> ( + None +): + observed_at = datetime(2026, 7, 12, tzinfo=UTC) + remote = _remote_default("b" * 40) + unknown = { + "state": "unknown", + "reason_code": "worktree_observation_failed", + "reason": "git could not observe the linked worktree", + "path": "/demo-workspace/fixture/configured", + "head": "a" * 40, + "branch": "feature", + "detached": False, + "bare": False, + "dirty": None, + "dirty_path_count": None, + } + linked = { + "state": "observed", + "path": "/demo-workspace/fixture/linked", + "head": "b" * 40, + "branch": "main", + "dirty": False, + "dirty_path_count": 0, + "upstream": "origin/main", + "upstream_branch": "main", + "upstream_remote": "origin", + "upstream_observation_source": "local_tracking_ref", + "ahead": 0, + "behind": 0, + "detached": False, + "bare": False, + } + worktrees = [unknown, linked] + selection = _select_remote_default_worktree(worktrees, remote) + state = _observed_result( + observed_at=observed_at, + remote=remote, + worktrees=worktrees, + topology={ + "kind": "working_repository", + "configured_path": unknown["path"], + "worktree_count": 2, + "linked_worktree_count": 1, + "selection": selection, + }, + local=_local_from_worktree(linked), + ) + + _validate_repository_state_shape( + state, + expected_remote=remote, + project_key="fixture/configured", + generated_at=observed_at, + ) + + wrong_reason = deepcopy(state) + wrong_reason["worktrees"][0]["reason"] = "different failure" + with pytest.raises(ValueError, match="worktree 0"): + _validate_repository_state_shape( + wrong_reason, + expected_remote=remote, + project_key="fixture/configured", + generated_at=observed_at, + ) + def test_ambiguous_remote_default_worktrees_fail_closed(tmp_path: Path) -> None: bare, head = _bare_repo(tmp_path) diff --git a/tests/test_portfolio_truth.py b/tests/test_portfolio_truth.py index dce179ef..ad5a0465 100644 --- a/tests/test_portfolio_truth.py +++ b/tests/test_portfolio_truth.py @@ -12,6 +12,10 @@ from src.cli import main from src.github_security_coverage import ( + GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION, + SecurityCoverageReceiptBinding, + _provider_result, + _remote_repository_result, collect_security_coverage, load_security_coverage_receipt, write_security_coverage_receipt, @@ -25,11 +29,13 @@ PortfolioTruthPublishError, publish_portfolio_truth, ) +from src.producer_preflight import ProducerEvidence, producer_evidence_receipt_id from src.portfolio_truth_reconcile import build_portfolio_truth_snapshot from src.portfolio_truth_render import ( render_portfolio_report_markdown, render_registry_markdown, ) +from src.portfolio_truth_provenance import REQUIRED_PROJECT_PROVENANCE_KEYS from src.portfolio_truth_sources import ( _classify_context_quality, _extract_github_full_name, @@ -471,6 +477,9 @@ def test_truth_snapshot_respects_declared_and_derived_fields( beta = projects["Beta"] gamma = projects["Calibrate"] + for project in projects.values(): + assert REQUIRED_PROJECT_PROVENANCE_KEYS <= project.provenance.keys() + assert alpha.identity.project_key == "Alpha" assert alpha.declared.owner == "d" assert alpha.declared.category == "commercial" @@ -821,13 +830,13 @@ def test_truth_snapshot_operating_path_catalog_field_matches_legacy_disposition( def test_attention_state_classifier_separates_activity_from_operator_attention() -> ( None ): - from src.portfolio_truth_reconcile import _attention_state_for + from src.portfolio_truth_decisions import derive_attention_state from src.portfolio_truth_types import VALID_LIFECYCLE_STATES assert "manual-only" in VALID_LIFECYCLE_STATES assert ( - _attention_state_for( + derive_attention_state( activity_status="active", archived=False, lifecycle_state="active", @@ -839,7 +848,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "active-product" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="active", archived=False, lifecycle_state="active", @@ -851,7 +860,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "active-infra" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="active", archived=False, lifecycle_state="active", @@ -863,7 +872,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "decision-needed" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="stale", archived=False, lifecycle_state="active", @@ -875,7 +884,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "decision-needed" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="recent", archived=False, lifecycle_state="active", @@ -887,7 +896,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "decision-needed" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="active", archived=False, lifecycle_state="active", @@ -899,7 +908,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "manual-only" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="active", archived=False, lifecycle_state="dormant", @@ -911,7 +920,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "parked" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="stale", archived=False, lifecycle_state="dormant", @@ -923,7 +932,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "decision-needed" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="active", archived=False, lifecycle_state="active", @@ -935,7 +944,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "manual-only" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="active", archived=False, lifecycle_state="manual-only", @@ -947,7 +956,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "manual-only" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="active", archived=False, lifecycle_state="active", @@ -959,7 +968,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "manual-only" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="active", archived=False, lifecycle_state="active", @@ -971,7 +980,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "experiment" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="active", archived=True, lifecycle_state="archived", @@ -983,7 +992,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "archived" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="stale", archived=False, lifecycle_state="active", @@ -995,7 +1004,7 @@ def test_attention_state_classifier_separates_activity_from_operator_attention() == "decision-needed" ) assert ( - _attention_state_for( + derive_attention_state( activity_status="stale", archived=False, lifecycle_state="active", @@ -1022,7 +1031,7 @@ def test_attention_state_uses_resolved_catalog_operating_path( expected_attention: str, ) -> None: from src.portfolio_pathing import build_operating_path_entry - from src.portfolio_truth_reconcile import _attention_state_for + from src.portfolio_truth_decisions import derive_attention_state catalog_entry = build_operating_path_entry( { @@ -1035,7 +1044,7 @@ def test_attention_state_uses_resolved_catalog_operating_path( assert catalog_entry["operating_path"] == operating_path assert ( - _attention_state_for( + derive_attention_state( activity_status="active", archived=False, lifecycle_state="active", @@ -1577,6 +1586,85 @@ def test_security_overlay_absent_leaves_repos_unscanned( assert project.risk.security_risk is False +@pytest.mark.parametrize( + ("produced_offset", "loaded_age", "state", "expected_age"), + ( + (timedelta(minutes=-3), -0.05, "fresh", 0.0), + (timedelta(seconds=4), 0.0, "fresh", 0.001), + (timedelta(), 0.0, "fresh", 0.0), + (timedelta(seconds=-36), -0.01, "fresh", 0.0), + (timedelta(hours=24, microseconds=-1), 24.0, "fresh", 24.0), + (timedelta(hours=24), 24.0, "fresh", 24.0), + (timedelta(hours=24, microseconds=1), 24.0, "stale", 24.0), + ), +) +def test_security_input_freshness_is_canonicalized_at_snapshot_clock( + portfolio_workspace: Path, + portfolio_catalog: Path, + legacy_registry: Path, + produced_offset: timedelta, + loaded_age: float, + state: str, + expected_age: float, +) -> None: + evaluation_at = datetime(2026, 8, 4, 12, tzinfo=timezone.utc) + produced_at = evaluation_at - produced_offset + metadata = { + "source_id": "github-security-coverage-receipt", + "schema_version": GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION, + "produced_at": produced_at.isoformat(), + "state": state, + "age_hours": loaded_age, + "producer_commit": "a" * 40, + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 1, + "path": "/evidence/github-security-coverage-latest.json", + } + + built = build_portfolio_truth_snapshot( + workspace_root=portfolio_workspace, + catalog_path=portfolio_catalog, + legacy_registry_path=legacy_registry, + include_notion=False, + now=evaluation_at, + security_coverage_metadata=metadata, + ) + + assert built.snapshot.inputs["github_security"]["age_hours"] == expected_age + validate_truth_snapshot(built.snapshot, security_max_age_hours=24) + + +def test_security_input_rejects_clock_skew_beyond_tolerance( + portfolio_workspace: Path, + portfolio_catalog: Path, + legacy_registry: Path, +) -> None: + evaluation_at = datetime(2026, 8, 4, 12, tzinfo=timezone.utc) + produced_at = evaluation_at + timedelta(minutes=3, microseconds=1) + metadata = { + "source_id": "github-security-coverage-receipt", + "schema_version": GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION, + "produced_at": produced_at.isoformat(), + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "a" * 40, + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 1, + "path": "/evidence/github-security-coverage-latest.json", + } + built = build_portfolio_truth_snapshot( + workspace_root=portfolio_workspace, + catalog_path=portfolio_catalog, + legacy_registry_path=legacy_registry, + include_notion=False, + now=evaluation_at, + security_coverage_metadata=metadata, + ) + + with pytest.raises(ValueError, match="future-dated"): + validate_truth_snapshot(built.snapshot, security_max_age_hours=24) + + def test_select_security_entry_joins_by_repo_name_when_display_differs() -> None: # GHAS is keyed by repo name ("signal-noise"); the local dir is "Signal & Noise". from src.portfolio_truth_reconcile import _select_security_entry @@ -1940,6 +2028,7 @@ def test_registry_render_surfaces_security_and_round_trips( legacy_registry: Path, tmp_path: Path, ) -> None: + now = datetime(2026, 8, 4, 12, tzinfo=timezone.utc) security = { "Alpha": { "dependabot": { @@ -1947,6 +2036,7 @@ def test_registry_render_surfaces_security_and_round_trips( "high": 1, "medium": 0, "low": 0, + "receipt_id": 7, "available": True, }, "code_scanning": {"available": True}, @@ -1958,6 +2048,7 @@ def test_registry_render_surfaces_security_and_round_trips( catalog_path=portfolio_catalog, legacy_registry_path=legacy_registry, include_notion=False, + now=now, security_alerts_by_name=security, ) markdown = render_registry_markdown(result.snapshot) @@ -1976,6 +2067,41 @@ def test_registry_render_surfaces_security_and_round_trips( registry_path.write_text(markdown) parsed = parse_registry(registry_path) assert len(parsed) == len(result.snapshot.projects) + validate_truth_snapshot(result.snapshot) + + published = publish_portfolio_truth( + workspace_root=portfolio_workspace, + output_dir=tmp_path / "legacy-security-output", + registry_output=portfolio_workspace / "legacy-security-registry.md", + portfolio_report_output=portfolio_workspace / "legacy-security-report.md", + catalog_path=portfolio_catalog, + legacy_registry_path=legacy_registry, + include_notion=False, + security_alerts_by_name=security, + ) + assert published.latest_path.exists() + + +def test_receipt_backed_security_publish_requires_explicit_evaluation_clock( + portfolio_workspace: Path, + portfolio_catalog: Path, + legacy_registry: Path, + tmp_path: Path, +) -> None: + with pytest.raises( + PortfolioTruthPublishError, + match="Receipt-backed security publication requires an explicit evaluation clock", + ): + publish_portfolio_truth( + workspace_root=portfolio_workspace, + output_dir=tmp_path / "security-output", + registry_output=portfolio_workspace / "security-registry.md", + portfolio_report_output=portfolio_workspace / "security-report.md", + catalog_path=portfolio_catalog, + legacy_registry_path=legacy_registry, + include_notion=False, + security_coverage_metadata={}, + ) def test_registry_render_omits_security_flag_when_unscanned( @@ -2251,6 +2377,132 @@ def test_publish_is_noop_for_unchanged_compatibility_outputs( assert report_output.stat().st_mtime_ns == report_mtime +def test_publish_uses_bound_security_max_age_for_remote_evidence( + portfolio_workspace: Path, + portfolio_catalog: Path, + legacy_registry: Path, + tmp_path: Path, + monkeypatch: pytest.MonkeyPatch, +) -> None: + from contextlib import nullcontext + + monkeypatch.setattr( + "src.portfolio_truth_publish.verified_security_coverage_receipt_binding", + lambda _binding: nullcontext(), + ) + now = datetime.now(timezone.utc) + observed_at = now - timedelta(hours=30) + alpha = portfolio_workspace / "Alpha" + subprocess.run(["git", "init", "-b", "main"], cwd=alpha, check=True) + subprocess.run( + ["git", "config", "user.email", "tests@example.invalid"], + cwd=alpha, + check=True, + ) + subprocess.run( + ["git", "config", "user.name", "Tests"], cwd=alpha, check=True + ) + subprocess.run( + ["git", "remote", "add", "origin", "https://github.com/d/Alpha.git"], + cwd=alpha, + check=True, + ) + subprocess.run(["git", "add", "."], cwd=alpha, check=True) + subprocess.run(["git", "commit", "-m", "fixture"], cwd=alpha, check=True) + head = subprocess.run( + ["git", "rev-parse", "HEAD"], + cwd=alpha, + check=True, + capture_output=True, + text=True, + ).stdout.strip() + branch = subprocess.run( + ["git", "branch", "--show-current"], + cwd=alpha, + check=True, + capture_output=True, + text=True, + ).stdout.strip() + security = { + "d/Alpha": { + "receipt_schema_version": GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION, + "receipt_state": "fresh", + "source_produced_at": observed_at.isoformat(), + "cohort_member": True, + "cohort_policy": "portfolio-default-attention-v1", + "providers": { + name: _provider_result( + name, + state="not_requested", + reason="fixture_not_requested", + ) + for name in ("dependabot", "code_scanning", "secret_scanning") + }, + "repository": _remote_repository_result( + state="observed", + observed_at=observed_at.isoformat(), + default_branch=branch, + head_sha=head, + archived=False, + ), + } + } + binding = SecurityCoverageReceiptBinding( + source_path=str(tmp_path / "security.json"), + receipt_id="sha256:" + "a" * 64, + content_sha256="b" * 64, + receipt_state="fresh", + max_age_hours=48, + expected_cohort_count=1, + expected_producer_commit=None, + ) + metadata = { + "source_id": "github-security-coverage-receipt", + "schema_version": GITHUB_SECURITY_RECEIPT_SCHEMA_VERSION, + "produced_at": observed_at.isoformat(), + "state": "fresh", + "age_hours": 30.0, + "producer_commit": "a" * 40, + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 1, + "receipt_id": binding.receipt_id, + "content_sha256": binding.content_sha256, + "path": binding.source_path, + } + + built = build_portfolio_truth_snapshot( + workspace_root=portfolio_workspace, + catalog_path=portfolio_catalog, + legacy_registry_path=legacy_registry, + include_notion=False, + now=now, + security_alerts_by_name=security, + security_coverage_metadata=metadata, + ) + validate_truth_snapshot(built.snapshot, security_max_age_hours=48) + with pytest.raises(ValueError, match="configured freshness window"): + validate_truth_snapshot(built.snapshot, security_max_age_hours=24) + + published = publish_portfolio_truth( + workspace_root=portfolio_workspace, + output_dir=tmp_path / "max-age-output", + registry_output=portfolio_workspace / "max-age-registry.md", + portfolio_report_output=portfolio_workspace / "max-age-report.md", + catalog_path=portfolio_catalog, + legacy_registry_path=legacy_registry, + include_notion=False, + security_alerts_by_name=security, + security_coverage_metadata=metadata, + security_receipt_binding=binding, + now=now, + ) + payload = json.loads(published.latest_path.read_text()) + alpha_payload = next( + project for project in payload["projects"] if project["identity"]["path"] == "Alpha" + ) + assert alpha_payload["repository_state"]["remote_default_branch"]["state"] == "observed" + + def test_generated_registry_notes_do_not_accumulate_purpose_prefix( portfolio_workspace: Path, tmp_path: Path, @@ -2570,6 +2822,7 @@ def stage_then_replace_receipt(target: Path, content: str) -> Path: security_alerts_by_name=loaded.entries_by_full_name, security_coverage_metadata=metadata, security_receipt_binding=binding, + now=now, ) assert replaced is True @@ -2579,6 +2832,202 @@ def stage_then_replace_receipt(target: Path, content: str) -> Path: assert not list(output_dir.glob("portfolio-truth-*.json")) +def test_publish_refuses_nested_evidence_that_expires_after_snapshot( + portfolio_workspace: Path, + portfolio_catalog: Path, + legacy_registry: Path, + tmp_path: Path, + monkeypatch: pytest.MonkeyPatch, +) -> None: + from contextlib import contextmanager + + now = datetime.now(timezone.utc).replace(microsecond=0) + nested_observed_at = now - timedelta(hours=24) + timedelta(milliseconds=500) + output_dir = tmp_path / "output" + output_dir.mkdir() + receipt_path = output_dir / "github-security-coverage-latest.json" + receipt_truth = { + "projects": [ + { + "identity": {"repo_full_name": "d/Alpha"}, + "derived": {"attention_state": "active-product"}, + } + ] + } + receipt = collect_security_coverage( + receipt_truth, + token=None, + expected_cohort_count=1, + now=now, + producer_commit="a" * 40, + ) + alpha_receipt = receipt["repositories"]["d/Alpha"] + alpha_receipt["providers"]["dependabot"] = _provider_result( + "dependabot", + state="observed", + observed_at=nested_observed_at.isoformat(), + http_status=200, + pagination_complete=True, + counts={"critical": 0, "high": 0, "medium": 0, "low": 0}, + ) + alpha_receipt["repository"] = _remote_repository_result( + state="observed", + observed_at=nested_observed_at.isoformat(), + default_branch="main", + head_sha="b" * 40, + archived=False, + ) + write_security_coverage_receipt( + receipt, + receipt_path, + expected_cohort_count=1, + ) + loaded = load_security_coverage_receipt( + receipt_path, + expected_cohort_count=1, + expected_producer_commit="a" * 40, + now=now, + ) + at_boundary = load_security_coverage_receipt( + receipt_path, + expected_cohort_count=1, + expected_producer_commit="a" * 40, + now=now + timedelta(milliseconds=500), + ) + reloaded = load_security_coverage_receipt( + receipt_path, + expected_cohort_count=1, + expected_producer_commit="a" * 40, + now=now + timedelta(seconds=1), + ) + assert loaded.receipt_id == at_boundary.receipt_id == reloaded.receipt_id + assert loaded.content_sha256 == at_boundary.content_sha256 == reloaded.content_sha256 + assert loaded.receipt_state == at_boundary.receipt_state == "fresh" + assert reloaded.receipt_state == "fresh" + assert loaded.entries_by_full_name["d/Alpha"]["providers"]["dependabot"][ + "state" + ] == "observed" + assert reloaded.entries_by_full_name["d/Alpha"]["providers"]["dependabot"][ + "state" + ] == "stale" + assert at_boundary.entries_by_full_name["d/Alpha"]["providers"]["dependabot"][ + "state" + ] == "observed" + assert loaded.entries_by_full_name["d/Alpha"]["repository"]["state"] == ( + "observed" + ) + assert reloaded.entries_by_full_name["d/Alpha"]["repository"]["state"] == ( + "stale" + ) + assert at_boundary.entries_by_full_name["d/Alpha"]["repository"]["state"] == ( + "observed" + ) + + binding = loaded.binding() + metadata = { + "source_id": "github-security-coverage-receipt", + "schema_version": loaded.schema_version, + "produced_at": loaded.produced_at, + "state": loaded.receipt_state, + "age_hours": loaded.age_hours, + "producer_commit": loaded.producer_commit, + "cohort_policy": loaded.cohort_policy, + "cohort_repository_count": len(loaded.cohort_repositories), + "path": loaded.source_path, + "receipt_id": loaded.receipt_id, + "content_sha256": loaded.content_sha256, + } + producer_repo_root = tmp_path / "producer-repo" + verified_at = now.isoformat() + producer_evidence = ProducerEvidence( + repository="saagpatel/GithubRepoAuditor", + expected_repository="saagpatel/GithubRepoAuditor", + commit="a" * 40, + ref="refs/heads/main", + checkout_role="canonical-producer", + checkout_path=str(producer_repo_root), + worktree_clean=True, + dirty_path_count=0, + verified_at=now, + receipt_id=producer_evidence_receipt_id( + repository="saagpatel/GithubRepoAuditor", + expected_repository="saagpatel/GithubRepoAuditor", + commit="a" * 40, + ref="refs/heads/main", + checkout_role="canonical-producer", + checkout_path=str(producer_repo_root), + verified_at=verified_at, + ), + ) + registry_output = portfolio_workspace / "project-registry.md" + report_output = portfolio_workspace / "PORTFOLIO-AUDIT-REPORT.md" + registry_output.write_text("sentinel-registry\n") + report_output.write_text("sentinel-report\n") + + clock = {"now": now} + events: list[str] = [] + verification_count = 0 + + def advance_during_final_producer_verification( + _repo_root: Path, + _evidence: ProducerEvidence, + ) -> None: + nonlocal verification_count + verification_count += 1 + events.append(f"verify-{verification_count}") + if verification_count == 2: + clock["now"] = now + timedelta(seconds=1) + + @contextmanager + def reloaded_guard(_binding: SecurityCoverageReceiptBinding): + events.append("guard-enter") + try: + yield load_security_coverage_receipt( + receipt_path, + expected_cohort_count=1, + expected_producer_commit="a" * 40, + now=clock["now"], + ) + finally: + events.append("guard-exit") + + monkeypatch.setattr( + "src.portfolio_truth_publish.verify_evidence_still_current", + advance_during_final_producer_verification, + ) + monkeypatch.setattr( + "src.portfolio_truth_publish.verified_security_coverage_receipt_binding", + reloaded_guard, + ) + + with pytest.raises( + PortfolioTruthPublishError, + match="normalized evidence changed after it was loaded", + ): + publish_portfolio_truth( + workspace_root=portfolio_workspace, + output_dir=output_dir, + registry_output=registry_output, + portfolio_report_output=report_output, + catalog_path=portfolio_catalog, + legacy_registry_path=legacy_registry, + include_notion=False, + security_alerts_by_name=loaded.entries_by_full_name, + security_coverage_metadata=metadata, + security_receipt_binding=binding, + producer_evidence=producer_evidence, + producer_repo_root=producer_repo_root, + now=now, + ) + + assert events == ["verify-1", "verify-2", "guard-enter", "guard-exit"] + assert registry_output.read_text() == "sentinel-registry\n" + assert report_output.read_text() == "sentinel-report\n" + assert not (output_dir / "portfolio-truth-latest.json").exists() + assert not list(output_dir.glob("portfolio-truth-*.json")) + assert not list(output_dir.glob("*.tmp")) + + def test_publish_requires_producer_evidence_before_touching_outputs( portfolio_workspace: Path, portfolio_catalog: Path, @@ -2922,9 +3371,11 @@ def test_portfolio_truth_app_threads_security_cohort_count( def fake_security_loader(**kwargs): captured.update(kwargs) + captured["security_now"] = kwargs["now"] return None - def fake_publish(**_kwargs): + def fake_publish(**kwargs): + captured["publish_now"] = kwargs["now"] return SimpleNamespace( latest_path=tmp_path / "latest.json", snapshot_path=tmp_path / "history.json", @@ -2970,6 +3421,7 @@ def fake_publish(**_kwargs): assert captured["max_age_hours"] == 12 assert captured["expected_producer_commit"] is None assert captured["repo_status_cache"] is None + assert captured["security_now"] is captured["publish_now"] def test_portfolio_truth_app_carries_security_receipt_binding_to_publisher( @@ -3104,24 +3556,39 @@ def test_portfolio_truth_app_passes_validated_producer_receipt_to_publisher( from types import SimpleNamespace from src.app.portfolio_truth import run_portfolio_truth_mode - from src.producer_preflight import PREFLIGHT_SCHEMA_VERSION + from src.producer_preflight import ( + PREFLIGHT_PASS_CHECKS, + PREFLIGHT_SCHEMA_VERSION, + producer_evidence_receipt_id, + ) receipt = tmp_path / "producer.json" + checkout_path = str(tmp_path / "producer-repo") + verified_at = "2026-07-10T12:00:00Z" receipt.write_text( json.dumps( { "schema_version": PREFLIGHT_SCHEMA_VERSION, "state": "pass", "repository": "saagpatel/GithubRepoAuditor", + "expected_repository": "saagpatel/GithubRepoAuditor", "commit": "a" * 40, "ref": "refs/remotes/origin/main", "checkout_role": "canonical-automation", - "checkout_path": str(tmp_path / "producer-repo"), + "checkout_path": checkout_path, "worktree_clean": True, "dirty_path_count": 0, - "verified_at": "2026-07-10T12:00:00Z", - "receipt_id": "sha256:" + "a" * 64, - "checks": {}, + "verified_at": verified_at, + "receipt_id": producer_evidence_receipt_id( + repository="saagpatel/GithubRepoAuditor", + expected_repository="saagpatel/GithubRepoAuditor", + commit="a" * 40, + ref="refs/remotes/origin/main", + checkout_role="canonical-automation", + checkout_path=checkout_path, + verified_at=verified_at, + ), + "checks": PREFLIGHT_PASS_CHECKS, } ) ) @@ -3167,6 +3634,7 @@ def fake_publish(**kwargs): assert evidence.commit == "a" * 40 assert captured["producer_repo_root"] == tmp_path / "producer-repo" assert captured["require_producer_evidence"] is True + assert captured["now"] is None def test_cli_portfolio_truth_allow_empty_notion_carries_forward( diff --git a/tests/test_portfolio_truth_contract_fixture.py b/tests/test_portfolio_truth_contract_fixture.py new file mode 100644 index 00000000..811f6663 --- /dev/null +++ b/tests/test_portfolio_truth_contract_fixture.py @@ -0,0 +1,1729 @@ +"""Producer-side gate for the portable PortfolioTruth consumer contract.""" + +from __future__ import annotations + +import hashlib +import json +from copy import deepcopy +from dataclasses import replace +from datetime import datetime, timedelta +from pathlib import Path + +import pytest + +from src.demo_portfolio import resolved_coverage_state +from src.portfolio_truth_coverage import build_coverage_envelope +from src.portfolio_truth_metadata import build_source_summary, build_warnings +from src.portfolio_pathing import build_operating_path_entry +from src.portfolio_truth_precedence import PRECEDENCE_MATRIX +from src.portfolio_truth_provenance import REQUIRED_PROJECT_PROVENANCE_KEYS +from src.portfolio_truth_contract_fixture import ( + CONTRACT_VERSION, + EVALUATED_AT, + FIXTURE_RELATIVE_PATH, + GENERATED_AT, + MANIFEST_RELATIVE_PATH, + PRODUCER_REPOSITORY, + build_contract_fixture, + build_contract_manifest, + fixture_bytes, + manifest_bytes, +) +from src.portfolio_truth_reconcile import _build_security_fields +from src.portfolio_truth_types import SCHEMA_VERSION +from src.portfolio_truth_validate import ( + _snapshot_from_payload, + _validate_security_fields, + validate_truth_snapshot, + validate_truth_snapshot_payload, +) +from src.producer_preflight import ( + ProducerEvidence, + producer_evidence_receipt_id, +) + + +def test_committed_contract_artifacts_match_the_deterministic_generator() -> None: + assert Path(FIXTURE_RELATIVE_PATH).read_bytes() == fixture_bytes() + assert Path(MANIFEST_RELATIVE_PATH).read_bytes() == manifest_bytes() + + +def test_manifest_binds_schema_generator_and_fixture_digest() -> None: + manifest = json.loads(Path(MANIFEST_RELATIVE_PATH).read_text()) + fixture_raw = Path(FIXTURE_RELATIVE_PATH).read_bytes() + + assert manifest == build_contract_manifest() + assert manifest["contract_version"] == CONTRACT_VERSION + assert manifest["portfolio_truth_schema_version"] == SCHEMA_VERSION + assert manifest["producer"]["repository"] == PRODUCER_REPOSITORY + assert ( + manifest["producer"]["artifact_sha256"] + == hashlib.sha256(fixture_raw).hexdigest() + ) + + +def test_fixture_spans_the_receipt_states_with_additive_canaries() -> None: + fixture = build_contract_fixture() + states = [ + resolved_coverage_state(project["security"]) for project in fixture["projects"] + ] + + assert fixture["schema_version"] == SCHEMA_VERSION + assert fixture["generated_at"] == GENERATED_AT.isoformat() + assert fixture["inputs"] == { + "catalog": { + "source_id": "portfolio-catalog", + "sha256": None, + "observed_at": GENERATED_AT.isoformat(), + }, + "workspace": { + "source_id": "projects-root", + "observed_at": GENERATED_AT.isoformat(), + }, + "notion": { + "mode": "unavailable", + "observed_at": None, + "carried_from_generated_at": None, + }, + "github_security": { + "source_id": "github-security-coverage-receipt", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "produced_at": GENERATED_AT.isoformat(), + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "a" * 40, + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 3, + "path": "/demo-workspace/github-security-coverage.json", + "receipt_id": "sha256:" + "b" * 64, + "content_sha256": "b" * 64, + }, + } + assert fixture["exclusions"] == { + "policy_version": "workspace_discovery.v2", + "counts": {}, + } + assert sorted(states) == ["complete", "partial", "stale", "unknown"] + assert fixture["contract_fixture"]["contract_version"] == CONTRACT_VERSION + assert fixture["contract_fixture"]["producer_evidence"] == "absent" + assert "additive_contract_canary" in fixture["projects"][0] + + +def test_contract_fixture_paths_match_the_production_helper() -> None: + fixture = build_contract_fixture() + projects = { + project["identity"]["display_name"]: project + for project in fixture["projects"] + } + + for project in projects.values(): + declared = project["declared"] + derived = project["derived"] + expected = build_operating_path_entry( + {**declared, "has_explicit_entry": True}, + context_quality=derived["context_quality"], + archived=derived["archived"], + ) + assert expected["operating_path_source"] == "explicit-operating-path" + assert declared["operating_path"] == expected["operating_path"] + assert derived["path_confidence"] == expected["path_confidence"] + assert derived["path_override"] == expected["path_override"] + assert derived["path_rationale"] == expected["path_rationale"] + + assert { + name: ( + project["derived"]["path_confidence"], + project["derived"]["path_override"], + ) + for name, project in projects.items() + } == { + "Dovetail Forge": ("high", ""), + "Kestrel Loom": ("high", ""), + "Quartz Signal": ("medium", ""), + "Solstice Cairn": ("low", "investigate"), + } + assert projects["Solstice Cairn"]["risk"]["path_risk"] is True + assert projects["Solstice Cairn"]["risk"]["risk_tier"] == "elevated" + assert projects["Solstice Cairn"]["derived"]["attention_state"] == "manual-only" + + +def test_contract_fixture_carries_the_required_project_provenance_set() -> None: + fixture = build_contract_fixture() + + for project in fixture["projects"]: + provenance = project["provenance"] + assert REQUIRED_PROJECT_PROVENANCE_KEYS <= provenance.keys() + assert all( + provenance[key]["source"].strip() + for key in REQUIRED_PROJECT_PROVENANCE_KEYS + ) + + +def test_contract_rejects_missing_required_project_provenance() -> None: + fixture = build_contract_fixture() + fixture["projects"][0]["provenance"] = {} + + with pytest.raises(ValueError, match="missing required fields"): + validate_truth_snapshot_payload(fixture) + + +def test_contract_allows_optional_github_archived_provenance() -> None: + fixture = build_contract_fixture() + fixture["projects"][0]["provenance"]["github.archived"] = { + "source": "github_api", + "detail": "false", + } + + validate_truth_snapshot_payload(fixture) + + +def test_fixture_stale_receipt_is_stale_at_the_manifest_evaluation_time() -> None: + fixture = build_contract_fixture() + stale_security = next( + project["security"] + for project in fixture["projects"] + if resolved_coverage_state(project["security"]) == "stale" + ) + source_produced_at = datetime.fromisoformat(stale_security["source_produced_at"]) + age_hours = (EVALUATED_AT - source_produced_at).total_seconds() / 3600 + + assert age_hours > 24 + + +def test_fixture_receipt_rows_preserve_producer_repository_state() -> None: + fixture = build_contract_fixture() + receipt_rows = [ + project + for project in fixture["projects"] + if project["security"]["receipt_schema_version"] + ] + + for project in receipt_rows: + repository_state = project["repository_state"] + remote = repository_state["remote_default_branch"] + assert repository_state["state"] == "observed" + assert repository_state["local"]["path"].startswith("/demo-workspace/") + assert remote["source"] == "github-graphql-default-branch-head-v1" + if project["security"]["receipt_state"] == "stale": + assert remote["state"] == "stale" + assert remote["default_branch"] is None + assert remote["head_sha"] is None + else: + assert remote["state"] == "observed" + assert remote["default_branch"] == "main" + assert len(remote["head_sha"]) == 64 + + raw = json.dumps([project["repository_state"] for project in receipt_rows]).lower() + assert "/users/" not in raw + assert "saagpatel" not in raw + + +def test_fixture_repository_state_spans_fresh_stale_and_no_receipt_rows() -> None: + fixture = build_contract_fixture() + by_receipt_state = { + project["security"]["receipt_state"]: project["repository_state"] + for project in fixture["projects"] + } + + assert {"fresh", "stale", "unknown"}.issubset(by_receipt_state) + for repository_state in by_receipt_state.values(): + assert repository_state["state"] == "observed" + assert repository_state["local"] == { + key: repository_state["worktrees"][0][key] + for key in repository_state["local"] + } + assert repository_state["topology"]["worktree_count"] == len( + repository_state["worktrees"] + ) + assert by_receipt_state["fresh"]["remote_default_branch"]["state"] == "observed" + assert by_receipt_state["stale"]["remote_default_branch"]["state"] == "stale" + assert by_receipt_state["unknown"]["remote_default_branch"]["state"] == "unknown" + + +def test_generated_and_committed_fixtures_pass_canonical_payload_validation() -> None: + generated = build_contract_fixture() + committed = json.loads(Path(FIXTURE_RELATIVE_PATH).read_text()) + + assert generated["producer"] == {} + assert committed["producer"] == {} + validate_truth_snapshot_payload(generated) + validate_truth_snapshot_payload(committed) + + +def test_observed_provider_requires_response_bound_reason() -> None: + fixture = build_contract_fixture() + provider = _complete_project(fixture)["security"]["providers"]["dependabot"] + provider.update( + http_status=304, + http_classification="not_modified", + reason="not_modified", + conditional={"requested": True, "result": "not_modified"}, + ) + validate_truth_snapshot_payload(fixture) + + provider["reason"] = "fabricated" + with pytest.raises(ValueError, match="reason does not match observed response"): + validate_truth_snapshot_payload(fixture) + + +def test_kestrel_rejects_coherently_fabricated_not_found_reason() -> None: + fixture = build_contract_fixture() + kestrel = next( + project + for project in fixture["projects"] + if project["identity"]["display_name"] == "Kestrel Loom" + ) + provider = kestrel["security"]["providers"]["code_scanning"] + assert (provider["state"], provider["http_status"]) == ("not_found", 404) + provider["reason"] = "fabricated_reason" + provider["http_classification"] = "fabricated_reason" + + with pytest.raises(ValueError, match="producer reason domain"): + validate_truth_snapshot_payload(fixture) + + +def test_kestrel_rejects_modified_conditional_for_not_found_response() -> None: + fixture = build_contract_fixture() + kestrel = next( + project + for project in fixture["projects"] + if project["identity"]["display_name"] == "Kestrel Loom" + ) + provider = kestrel["security"]["providers"]["code_scanning"] + assert (provider["state"], provider["http_status"]) == ("not_found", 404) + provider["conditional"] = {"requested": True, "result": "modified"} + + with pytest.raises(ValueError, match="conditional metadata.*producer domain"): + validate_truth_snapshot_payload(fixture) + + +def test_kestrel_rejects_fabricated_partial_remote_reason() -> None: + fixture = build_contract_fixture() + kestrel = next( + project + for project in fixture["projects"] + if project["identity"]["display_name"] == "Kestrel Loom" + ) + remote = kestrel["repository_state"]["remote_default_branch"] + remote.update( + state="partial", + reason_code="default_branch_head_unavailable", + reason="fabricated_reason", + default_branch=None, + head_sha=None, + archived=False, + ) + + with pytest.raises(ValueError, match="producer reason domain"): + validate_truth_snapshot_payload(fixture) + + +def test_contract_fixture_uses_the_shared_producer_coverage_envelope() -> None: + fixture = build_contract_fixture() + + assert fixture["coverage"] == build_coverage_envelope( + projects=fixture["projects"], + notion_context_carried_forward=False, + notion_context_rows=0, + ) + assert [row["source"] for row in fixture["coverage"]] == [ + "workspace", + "git", + "github_security", + "notion", + ] + + +def test_contract_fixture_uses_the_shared_producer_precedence_matrix() -> None: + fixture = build_contract_fixture() + + assert fixture["precedence_matrix"] == PRECEDENCE_MATRIX + + +@pytest.mark.parametrize( + "duplicate_path", + ("platform/dovetail-forge-copy", "supp:dovetail-forge-copy"), +) +def test_shared_source_summary_exposes_workspace_and_supplementary_duplicates( + duplicate_path: str, +) -> None: + fixture = build_contract_fixture() + original = _complete_project(fixture) + duplicate = deepcopy(original) + duplicate["identity"]["project_key"] = duplicate_path + duplicate["identity"]["path"] = duplicate_path + + summary = build_source_summary( + workspace_root=fixture["workspace_root"], + projects=[original, duplicate], + catalog_errors=[], + catalog_warnings=[], + legacy_registry_rows=0, + notion_context_rows=0, + notion_context_carried_forward=False, + ) + warnings = build_warnings( + catalog_errors=[], + catalog_warnings=[], + unresolved_duplicates=summary["unresolved_duplicate_display_names"], + ) + + assert summary["duplicate_display_names"] == ["Dovetail Forge"] + assert summary["unresolved_duplicate_display_names"] == ["Dovetail Forge"] + assert warnings == [ + "Duplicate project display names require path-qualified registry labels: " + "Dovetail Forge" + ] + + +def _complete_project(fixture: dict[str, object]) -> dict[str, object]: + return next( + project + for project in fixture["projects"] + if project["security"]["coverage_state"] == "complete" + ) + + +def test_generic_snapshot_validation_rejects_synthetic_mixed_receipt_batch() -> None: + fixture = build_contract_fixture() + + with pytest.raises(ValueError, match="source time is inconsistent"): + validate_truth_snapshot(_snapshot_from_payload(fixture)) + + +def test_contract_rejects_tampered_synthetic_matrix_marker() -> None: + fixture = build_contract_fixture() + fixture["contract_fixture"]["deterministic"] = False + + with pytest.raises(ValueError, match="source time is inconsistent"): + validate_truth_snapshot_payload(fixture) + + +def test_contract_matrix_marker_does_not_auto_enable_with_producer_evidence() -> None: + fixture = build_contract_fixture() + fixture["producer"] = _valid_producer_evidence() + + with pytest.raises(ValueError, match="source time is inconsistent"): + validate_truth_snapshot_payload(fixture) + + +@pytest.mark.parametrize( + ("mutation", "message"), + ( + ( + lambda payload: payload["precedence_matrix"].pop("declared.owner"), + "precedence matrix", + ), + ( + lambda payload: payload["precedence_matrix"]["declared.owner"].append( + "demo-fixture" + ), + "precedence matrix", + ), + ( + lambda payload: payload["source_summary"].update(project_count=99), + "source summary", + ), + ( + lambda payload: payload["source_summary"].pop( + "activity_status_counts" + ), + "source summary", + ), + ( + lambda payload: payload["source_summary"][ + "context_quality_counts" + ].update(full=99), + "source summary", + ), + ( + lambda payload: payload["source_summary"][ + "attention_state_counts" + ].update(parked=99), + "source summary", + ), + ( + lambda payload: payload["source_summary"].update(archived_count=99), + "source summary", + ), + ( + lambda payload: payload["source_summary"].update( + github_archived_count=99 + ), + "source summary", + ), + ( + lambda payload: payload["source_summary"].update( + duplicate_display_names=["fabricated"] + ), + "source summary", + ), + ( + lambda payload: payload["source_summary"].update( + catalog_errors=["fabricated catalog error"] + ), + "warnings", + ), + ( + lambda payload: payload.update(workspace_root="/demo-other"), + "workspace_root", + ), + ( + lambda payload: payload["inputs"]["catalog"].update( + source_id="fabricated" + ), + "catalog input", + ), + ( + lambda payload: payload["inputs"].pop("catalog"), + "input envelope", + ), + ( + lambda payload: payload["inputs"]["catalog"].update( + observed_at=(GENERATED_AT - timedelta(minutes=1)).isoformat() + ), + "catalog input", + ), + ( + lambda payload: payload["inputs"]["workspace"].update( + source_id="fabricated" + ), + "workspace input", + ), + ( + lambda payload: payload["inputs"].pop("workspace"), + "input envelope", + ), + ( + lambda payload: payload["inputs"]["workspace"].update( + observed_at=(GENERATED_AT - timedelta(minutes=1)).isoformat() + ), + "workspace input", + ), + ( + lambda payload: payload["source_summary"].update( + notion_context_rows=1 + ), + "Notion input", + ), + ( + lambda payload: payload["source_summary"].update( + notion_context_carried_forward=True + ), + "Notion input", + ), + ( + lambda payload: payload["inputs"]["notion"].update( + mode="live", observed_at=GENERATED_AT.isoformat() + ), + "Notion input", + ), + ( + lambda payload: payload["exclusions"].update(policy_version="fabricated"), + "exclusions", + ), + ( + lambda payload: payload["exclusions"]["counts"].update(hidden=-1), + "exclusion counts", + ), + ( + lambda payload: payload["warnings"].append("fabricated warning"), + "warnings", + ), + ), +) +def test_contract_validation_rejects_top_level_envelope_drift( + mutation: object, + message: str, +) -> None: + fixture = build_contract_fixture() + mutation(fixture) + + with pytest.raises(ValueError, match=message): + validate_truth_snapshot_payload(fixture) + + +@pytest.mark.parametrize( + ("reason", "count"), + (("fabricated", 1), ("scratch-container", 0)), +) +def test_contract_rejects_nonproducer_exclusion_counts( + reason: str, + count: int, +) -> None: + fixture = build_contract_fixture() + fixture["exclusions"]["counts"] = {reason: count} + + with pytest.raises(ValueError, match="exclusion counts"): + validate_truth_snapshot_payload(fixture) + + +def test_contract_validation_rejects_cross_envelope_notion_drift() -> None: + fixture = build_contract_fixture() + observed_at = (GENERATED_AT - timedelta(hours=1)).isoformat() + fixture["source_summary"].update( + notion_context_rows=1, + notion_context_carried_forward=True, + ) + fixture["inputs"]["notion"] = { + "mode": "carried-forward", + "observed_at": observed_at, + "carried_from_generated_at": observed_at, + } + + with pytest.raises(ValueError, match="coverage differs"): + validate_truth_snapshot_payload(fixture) + + +def test_portable_contract_rejects_coherent_non_demo_workspace_root() -> None: + fixture = build_contract_fixture() + fixture["workspace_root"] = "/demo-other" + fixture["source_summary"]["workspace_root"] = "/demo-other" + + with pytest.raises(ValueError, match="exactly /demo-workspace"): + validate_truth_snapshot_payload(fixture) + + +@pytest.mark.parametrize( + "github_security", + ( + {}, + { + "path": "/evidence/security.json", + "receipt_id": "sha256:" + "a" * 64, + "content_sha256": "b" * 64, + }, + ), +) +def test_contract_rejects_partial_github_security_input( + github_security: dict[str, object], +) -> None: + fixture = build_contract_fixture() + fixture["inputs"]["github_security"] = github_security + + with pytest.raises(ValueError, match="GitHub security input"): + validate_truth_snapshot_payload(fixture) + + +def test_contract_requires_github_security_input_for_receipt_rows() -> None: + fixture = build_contract_fixture() + fixture["inputs"].pop("github_security") + + with pytest.raises(ValueError, match="required for receipt-backed rows"): + validate_truth_snapshot_payload(fixture) + + +@pytest.mark.parametrize("missing", ("receipt_id", "content_sha256")) +def test_portable_contract_requires_security_receipt_binding(missing: str) -> None: + fixture = build_contract_fixture() + fixture["inputs"]["github_security"].pop(missing) + + with pytest.raises(ValueError, match="requires both receipt_id"): + validate_truth_snapshot_payload(fixture) + + +def _valid_producer_evidence() -> dict[str, object]: + verified_at = GENERATED_AT.isoformat() + return ProducerEvidence( + repository="saagpatel/GithubRepoAuditor", + expected_repository="saagpatel/GithubRepoAuditor", + commit="a" * 40, + ref="refs/heads/main", + checkout_role="canonical-producer", + checkout_path="/demo-workspace/producer", + worktree_clean=True, + dirty_path_count=0, + verified_at=GENERATED_AT, + receipt_id=producer_evidence_receipt_id( + repository="saagpatel/GithubRepoAuditor", + expected_repository="saagpatel/GithubRepoAuditor", + commit="a" * 40, + ref="refs/heads/main", + checkout_role="canonical-producer", + checkout_path="/demo-workspace/producer", + verified_at=verified_at, + ), + ).to_dict() + + +def test_contract_accepts_canonical_producer_evidence_shape() -> None: + fixture = build_contract_fixture() + fixture["producer"] = _valid_producer_evidence() + + validate_truth_snapshot_payload(fixture, allow_synthetic_security_matrix=True) + + +def test_contract_rejects_future_producer_evidence() -> None: + fixture = build_contract_fixture() + fixture["producer"] = _valid_producer_evidence() + fixture["producer"]["verified_at"] = (GENERATED_AT + timedelta(seconds=1)).isoformat() + + with pytest.raises(ValueError, match="future-dated"): + validate_truth_snapshot_payload( + fixture, allow_synthetic_security_matrix=True + ) + + +def test_contract_binds_github_security_commit_to_producer_evidence() -> None: + fixture = build_contract_fixture() + fixture["producer"] = _valid_producer_evidence() + fixture["inputs"]["github_security"] = { + "source_id": "github-security-coverage-receipt", + "schema_version": "GitHubSecurityCoverageReceiptV1", + "produced_at": GENERATED_AT.isoformat(), + "state": "fresh", + "age_hours": 0.0, + "producer_commit": "b" * 40, + "cohort_policy": "portfolio-default-attention-v1", + "cohort_repository_count": 2, + "path": "/demo-workspace/github-security.json", + "receipt_id": "sha256:" + "b" * 64, + "content_sha256": "b" * 64, + } + + with pytest.raises(ValueError, match="differs from producer evidence"): + validate_truth_snapshot_payload( + fixture, allow_synthetic_security_matrix=True + ) + + +@pytest.mark.parametrize( + ("mutation", "message"), + ( + (lambda value: value.update(repository=7), "repository"), + ( + lambda value: value.update(expected_repository="other/repository"), + "does not match expected_repository", + ), + (lambda value: value.update(ref=None), "ref"), + (lambda value: value.update(checkout_role={}), "checkout_role"), + (lambda value: value.update(checkout_path=7), "checkout_path"), + (lambda value: value.update(verified_at="not-a-time"), "verified_at"), + (lambda value: value.update(receipt_id=[]), "receipt_id"), + (lambda value: value.update(commit="0" * 40), "commit"), + (lambda value: value.update(extra="fabricated"), "unexpected fields"), + ), +) +def test_contract_rejects_malformed_producer_evidence( + mutation: object, + message: str, +) -> None: + fixture = build_contract_fixture() + fixture["producer"] = _valid_producer_evidence() + mutation(fixture["producer"]) + + with pytest.raises(ValueError, match=message): + validate_truth_snapshot_payload( + fixture, allow_synthetic_security_matrix=True + ) + + +@pytest.mark.parametrize( + ("ref", "checkout_role"), + ( + ("refs/heads/main\ncanonical", "producer"), + ("refs/heads/main", "canonical\nproducer"), + ), +) +def test_contract_rejects_old_delimiter_collision_producer_identities( + ref: str, + checkout_role: str, +) -> None: + fixture = build_contract_fixture() + producer = _valid_producer_evidence() + producer.update(ref=ref, checkout_role=checkout_role) + producer["receipt_id"] = producer_evidence_receipt_id( + repository=str(producer["repository"]), + expected_repository=str(producer["expected_repository"]), + commit=str(producer["commit"]), + ref=ref, + checkout_role=checkout_role, + checkout_path=str(producer["checkout_path"]), + verified_at=str(producer["verified_at"]), + ) + fixture["producer"] = producer + + with pytest.raises(ValueError, match="control-free text"): + validate_truth_snapshot_payload( + fixture, allow_synthetic_security_matrix=True + ) + + +def test_contract_rejects_forged_supplementary_project_key() -> None: + fixture = build_contract_fixture() + fixture["projects"][0]["identity"]["project_key"] = "supp:forged" + + with pytest.raises(ValueError, match="exactly match"): + validate_truth_snapshot_payload(fixture) + + +@pytest.mark.parametrize( + ("field", "value", "message"), + ( + ("warnings", [7], "warnings"), + ( + "provenance", + {"derived.activity_status": {"source": 7, "detail": "active"}}, + "provenance", + ), + ( + "provenance", + { + "derived.activity_status": { + "source": "derived", + "detail": "active", + "extra": "fabricated", + } + }, + "provenance", + ), + ), +) +def test_contract_rejects_malformed_project_metadata( + field: str, + value: object, + message: str, +) -> None: + fixture = build_contract_fixture() + fixture["projects"][0][field] = value + + with pytest.raises(ValueError, match=message): + validate_truth_snapshot_payload(fixture) + + +@pytest.mark.parametrize( + ("section", "field", "value", "message"), + ( + ("identity", "display_name", 7, "display_name"), + ("declared", "owner", {}, "owner"), + ("declared", "automation_eligible", "yes", "automation_eligible"), + ("derived", "context_files", 7, "context_files"), + ("derived", "context_file_count", -99, "context_file_count"), + ("derived", "has_ci", "yes", "has_ci"), + ("advisory", "notion_momentum", 7, "notion_momentum"), + ("risk", "risk_factors", {}, "risk_factors"), + ("risk", "security_risk", "false", "security_risk"), + ), +) +def test_contract_rejects_malformed_nested_dataclass_types( + section: str, + field: str, + value: object, + message: str, +) -> None: + fixture = build_contract_fixture() + fixture["projects"][0][section][field] = value + + with pytest.raises(ValueError, match=message): + validate_truth_snapshot_payload(fixture) + + +def test_contract_rejects_erased_security_risk_and_decision() -> None: + fixture = build_contract_fixture() + kestrel = next( + project + for project in fixture["projects"] + if project["identity"]["display_name"] == "Kestrel Loom" + ) + assert kestrel["security"]["dependabot_high"] == 3 + kestrel["risk"] = { + "risk_tier": "baseline", + "risk_factors": [], + "risk_summary": ( + "No non-security risk factors detected; GitHub security coverage is " + "partial." + ), + "doctor_gap": False, + "context_risk": False, + "path_risk": False, + "security_risk": False, + } + kestrel["derived"]["attention_state"] = "active-infra" + kestrel["declared"]["category"] = "infrastructure" + + with pytest.raises(ValueError, match="risk.*production derivation"): + validate_truth_snapshot_payload(fixture) + + +def _append_hidden_duplicate(fixture: dict[str, object]) -> None: + projects = fixture["projects"] + duplicate = deepcopy(projects[0]) + duplicate["identity"]["project_key"] = "supp:duplicate-hidden" + duplicate["identity"]["path"] = "supp:duplicate-hidden" + projects.append(duplicate) + + +def test_contract_rejects_appended_hidden_duplicate_by_ordering() -> None: + fixture = build_contract_fixture() + _append_hidden_duplicate(fixture) + + with pytest.raises(ValueError, match="producer ordering"): + validate_truth_snapshot_payload(fixture) + + +def test_contract_rejects_sorted_hidden_duplicate_by_source_summary() -> None: + fixture = build_contract_fixture() + _append_hidden_duplicate(fixture) + fixture["projects"].sort( + key=lambda project: ( + project["identity"]["section_marker"].lower(), + project["identity"]["display_name"].lower(), + ) + ) + + with pytest.raises(ValueError, match="source summary"): + validate_truth_snapshot_payload(fixture) + + +@pytest.mark.parametrize( + "mutation", + ( + lambda coverage: coverage.pop(1), + lambda coverage: coverage.pop(3), + lambda coverage: next( + row for row in coverage if row["source"] == "github_security" + ).pop("provider_observed_counts"), + lambda coverage: next( + row for row in coverage if row["source"] == "github_security" + )["provider_observed_counts"].update(dependabot=99), + lambda coverage: next( + row for row in coverage if row["source"] == "github_security" + )["remote_default_branch_counts"].update(observed=99), + lambda coverage: next( + row for row in coverage if row["source"] == "github_security" + ).update(cohort_complete_count=99), + ), +) +def test_contract_validation_rejects_reduced_or_tampered_coverage( + mutation: object, +) -> None: + fixture = build_contract_fixture() + mutation(fixture["coverage"]) + + with pytest.raises(ValueError, match="producer envelope"): + validate_truth_snapshot_payload(fixture) + + +def test_shared_coverage_envelope_preserves_supplementary_behavior() -> None: + fixture = build_contract_fixture() + supplementary = deepcopy(fixture["projects"][0]) + supplementary["identity"]["project_key"] = "supp:operator-surface" + projects = [*fixture["projects"], supplementary] + + coverage = build_coverage_envelope( + projects=projects, + notion_context_carried_forward=False, + notion_context_rows=0, + ) + by_source = {row["source"]: row for row in coverage} + + assert by_source["workspace"]["project_count"] == 4 + assert by_source["github_security"]["project_count"] == 4 + assert by_source["supplementary_registry"] == { + "source": "supplementary_registry", + "state": "observed", + "project_count": 1, + } + + +def test_canonical_payload_validation_rejects_partial_producer_evidence() -> None: + fixture = build_contract_fixture() + fixture["producer"] = { + "repository": "demo-org/portfolio-auditor", + "checkout_role": "demo-fixture", + "worktree_clean": True, + "dirty_path_count": 0, + "verified_at": GENERATED_AT.isoformat(), + } + + with pytest.raises(ValueError, match="Producer evidence is missing fields"): + validate_truth_snapshot_payload(fixture) + + +def test_canonical_payload_validation_rejects_invalid_project_row() -> None: + fixture = build_contract_fixture() + fixture["projects"][0]["derived"]["primary_context_file"] = "README.md" + + with pytest.raises(ValueError, match="Invalid primary context file"): + validate_truth_snapshot_payload(fixture) + + +def test_canonical_payload_validation_rejects_deleted_rollups() -> None: + fixture = build_contract_fixture() + del fixture["rollups"] + + with pytest.raises(ValueError, match=r"canonical reconstruction at \$\.rollups"): + validate_truth_snapshot_payload(fixture) + + +def test_canonical_payload_validation_rejects_tampered_rollup_count() -> None: + fixture = build_contract_fixture() + fixture["rollups"]["security"]["complete_repo_count"] += 1 + + with pytest.raises( + ValueError, + match=r"canonical reconstruction at \$\.rollups\.security\.complete_repo_count", + ): + validate_truth_snapshot_payload(fixture) + + +def test_canonical_payload_validation_rejects_tampered_project_rollup() -> None: + fixture = build_contract_fixture() + fixture["projects"][0]["security"]["open_high_critical"] += 1 + + with pytest.raises( + ValueError, + match=r"canonical reconstruction at \$\.projects\[0\]\.security\.open_high_critical", + ): + validate_truth_snapshot_payload(fixture) + + +def test_canonical_payload_validation_rejects_deleted_receipt_provider() -> None: + fixture = build_contract_fixture() + stale = next( + project["security"] + for project in fixture["projects"] + if project["security"]["receipt_state"] == "stale" + ) + del stale["providers"]["dependabot"] + + with pytest.raises(ValueError, match="must contain exactly"): + validate_truth_snapshot_payload(fixture) + + +def test_canonical_payload_validation_rejects_stale_provider_counts() -> None: + fixture = build_contract_fixture() + stale = next( + project["security"] + for project in fixture["projects"] + if project["security"]["receipt_state"] == "stale" + ) + stale["providers"]["dependabot"]["counts"] = { + "critical": 1, + "high": 0, + "medium": 0, + "low": 0, + } + + with pytest.raises(ValueError, match="must clear counts"): + validate_truth_snapshot_payload(fixture) + + +def test_canonical_payload_validation_rejects_invalid_provider_state() -> None: + fixture = build_contract_fixture() + fixture["projects"][0]["security"]["providers"]["dependabot"]["state"] = ( + "fabricated" + ) + + with pytest.raises(ValueError, match="state is invalid"): + validate_truth_snapshot_payload(fixture) + + +def test_canonical_payload_validation_rejects_observed_provider_count_shape() -> None: + fixture = build_contract_fixture() + counts = _complete_project(fixture)["security"]["providers"]["dependabot"][ + "counts" + ] + del counts["low"] + + with pytest.raises(ValueError, match="counts are invalid"): + validate_truth_snapshot_payload(fixture) + + +def test_canonical_payload_validation_rejects_provider_classification_drift() -> None: + fixture = build_contract_fixture() + fixture["projects"][0]["security"]["providers"]["dependabot"][ + "http_classification" + ] = "ok" + + with pytest.raises(ValueError, match="http_classification"): + validate_truth_snapshot_payload(fixture) + + +def test_canonical_payload_validation_rejects_invalid_declared_category() -> None: + fixture = build_contract_fixture() + fixture["projects"][0]["declared"]["category"] = "platform" + + with pytest.raises(ValueError, match="Invalid category"): + validate_truth_snapshot_payload(fixture) + + +def test_canonical_payload_validation_rejects_invalid_active_infra_category() -> None: + fixture = build_contract_fixture() + _complete_project(fixture)["declared"]["category"] = "learning" + + with pytest.raises(ValueError, match="requires the infrastructure category"): + validate_truth_snapshot_payload(fixture) + + +def test_canonical_payload_validation_rejects_providers_without_receipt() -> None: + fixture = build_contract_fixture() + unknown = next( + project["security"] + for project in fixture["projects"] + if project["security"]["receipt_state"] == "unknown" + ) + stale = next( + project["security"] + for project in fixture["projects"] + if project["security"]["receipt_state"] == "stale" + ) + unknown["providers"] = deepcopy(stale["providers"]) + + with pytest.raises(ValueError, match="Legacy security provider"): + validate_truth_snapshot_payload(fixture) + + +@pytest.mark.parametrize( + ("field", "value"), + ( + ("coverage_state", "complete"), + ("alerts_available", True), + ("receipt_state", "fabricated"), + ("dependabot_high", 1), + ("cohort_policy", "portfolio-default-attention-v1"), + ), +) +def test_unattested_security_validation_rejects_fabricated_metadata( + field: str, + value: object, +) -> None: + fixture = build_contract_fixture() + security = next( + project["security"] + for project in fixture["projects"] + if project["security"]["receipt_state"] == "unknown" + ) + security[field] = value + + with pytest.raises(ValueError, match="Unattested security"): + validate_truth_snapshot_payload(fixture) + + +def test_receipt_security_validation_rejects_false_cohort_membership() -> None: + fixture = build_contract_fixture() + fixture["projects"][0]["security"]["cohort_member"] = False + + with pytest.raises(ValueError, match="cohort member"): + validate_truth_snapshot_payload(fixture) + + +@pytest.mark.parametrize("cohort_policy", ("other-policy", 123)) +def test_receipt_security_requires_exact_production_cohort_policy( + cohort_policy: object, +) -> None: + fixture = build_contract_fixture() + fixture["projects"][0]["security"]["cohort_policy"] = cohort_policy + + with pytest.raises(ValueError, match="cohort"): + validate_truth_snapshot_payload(fixture) + + +def test_legacy_security_accepts_boolean_member_and_string_policy() -> None: + fields = replace( + _legacy_security_fields(), + cohort_member=True, + cohort_policy="legacy-import-v1", + ) + + _validate_security_fields(fields, "fixture/legacy", GENERATED_AT) + + +@pytest.mark.parametrize( + ("cohort_member", "cohort_policy"), + (("yes", "legacy-import-v1"), (True, 123)), +) +def test_legacy_security_rejects_noncanonical_cohort_types( + cohort_member: object, + cohort_policy: object, +) -> None: + fields = replace( + _legacy_security_fields(), + cohort_member=cohort_member, + cohort_policy=cohort_policy, + ) + + with pytest.raises(ValueError, match="invalid types"): + _validate_security_fields(fields, "fixture/legacy", GENERATED_AT) + + +def test_serialized_security_freshness_honors_explicit_validation_context() -> None: + fixture = build_contract_fixture() + project = _complete_project(fixture) + observed_at = GENERATED_AT - timedelta(hours=30) + project["security"]["source_produced_at"] = observed_at.isoformat() + for provider in project["security"]["providers"].values(): + provider["observed_at"] = observed_at.isoformat() + project["repository_state"]["remote_default_branch"]["observed_at"] = ( + observed_at.isoformat() + ) + stale_project = next( + item + for item in fixture["projects"] + if item["security"]["receipt_state"] == "stale" + ) + stale_at = GENERATED_AT - timedelta(hours=49) + stale_project["security"]["source_produced_at"] = stale_at.isoformat() + for provider in stale_project["security"]["providers"].values(): + provider["observed_at"] = stale_at.isoformat() + stale_project["repository_state"]["remote_default_branch"]["observed_at"] = ( + stale_at.isoformat() + ) + + validate_truth_snapshot_payload(fixture, security_max_age_hours=48) + with pytest.raises(ValueError, match="configured freshness window"): + validate_truth_snapshot_payload(fixture) + + +def _legacy_security_fields(): + return _build_security_fields( + { + "dependabot": { + "critical": 1, + "high": 2, + "receipt_id": 7, + "available": True, + }, + "code_scanning": {"available": True}, + "secret_scanning": {"open": 0, "available": True}, + } + ) + + +@pytest.mark.parametrize( + ("mutation", "message"), + ( + ( + lambda fields: fields.providers["dependabot"].update(reason="fabricated"), + "envelope", + ), + ( + lambda fields: fields.providers["dependabot"].update( + undocumented_canary=True + ), + "provider", + ), + ( + lambda fields: fields.providers["dependabot"].update( + observed_at=GENERATED_AT.isoformat() + ), + "envelope", + ), + ( + lambda fields: fields.providers["dependabot"].update( + reason_code="observed" + ), + "provider", + ), + ( + lambda fields: fields.providers["dependabot"].update( + pagination_complete=False + ), + "counts", + ), + ( + lambda fields: fields.providers["dependabot"]["counts"].update(high=-1), + "counts", + ), + ( + lambda fields: fields.providers["dependabot"]["counts"].update(high=True), + "counts", + ), + ( + lambda fields: fields.providers["dependabot"].update( + state="not_requested", pagination_complete=False, counts={} + ), + "unobserved", + ), + ( + lambda fields: object.__setattr__(fields, "dependabot_high", 99), + "does not match", + ), + ( + lambda fields: object.__setattr__(fields, "coverage_state", "unknown"), + "coverage", + ), + ), +) +def test_legacy_security_validation_rejects_tampered_envelopes( + mutation: object, + message: str, +) -> None: + fields = _legacy_security_fields() + mutation(fields) + + with pytest.raises(ValueError, match=message): + _validate_security_fields(fields, "fixture/legacy", GENERATED_AT) + + +def test_canonical_payload_validation_rejects_missing_remote_branch_state() -> None: + fixture = build_contract_fixture() + del fixture["projects"][0]["repository_state"]["remote_default_branch"] + + with pytest.raises(ValueError, match="requires remote_default_branch"): + validate_truth_snapshot_payload(fixture) + + +def _delete_repository_field(repository_state: dict[str, object], field: str) -> None: + del repository_state[field] + + +def _set_nested_repository_value( + repository_state: dict[str, object], + path: tuple[str | int, ...], + value: object, +) -> None: + target: object = repository_state + for key in path[:-1]: + target = target[key] + target[path[-1]] = value + + +def _delete_nested_repository_value( + repository_state: dict[str, object], + path: tuple[str | int, ...], +) -> None: + target: object = repository_state + for key in path[:-1]: + target = target[key] + del target[path[-1]] + + +def _replace_all_repository_paths(repository_state: dict[str, object]) -> None: + private_path = "/Users/d/private-repository" + repository_state["local"]["path"] = private_path + repository_state["worktrees"][0]["path"] = private_path + repository_state["topology"]["configured_path"] = private_path + repository_state["topology"]["selection"]["path"] = private_path + + +def _replace_all_repository_paths_with_other_demo_path( + repository_state: dict[str, object], +) -> None: + other_path = "/demo-workspace/other/project" + repository_state["local"]["path"] = other_path + repository_state["worktrees"][0]["path"] = other_path + repository_state["topology"]["configured_path"] = other_path + repository_state["topology"]["selection"]["path"] = other_path + + +@pytest.mark.parametrize( + ("mutation", "message"), + ( + (lambda state: _delete_repository_field(state, "local"), "fields"), + (lambda state: _delete_repository_field(state, "worktrees"), "fields"), + (lambda state: _delete_repository_field(state, "topology"), "fields"), + ( + lambda state: _delete_nested_repository_value(state, ("local", "upstream")), + "fields", + ), + ( + lambda state: _delete_nested_repository_value( + state, ("local", "upstream_branch") + ), + "fields", + ), + ( + lambda state: _delete_nested_repository_value( + state, ("local", "upstream_remote") + ), + "fields", + ), + ( + lambda state: _delete_nested_repository_value( + state, ("worktrees", 0, "dirty") + ), + "fields", + ), + ( + lambda state: _delete_nested_repository_value( + state, ("topology", "selection") + ), + "fields", + ), + ( + lambda state: _set_nested_repository_value( + state, ("local", "path"), "/Users/d/private-local" + ), + "[Rr]epository", + ), + ( + lambda state: _set_nested_repository_value( + state, ("worktrees", 0, "path"), "/Users/d/private-worktree" + ), + "[Rr]epository", + ), + ( + lambda state: _set_nested_repository_value( + state, + ("topology", "selection", "path"), + "/Users/d/private-selection", + ), + "[Rr]epository", + ), + ( + lambda state: _set_nested_repository_value( + state, ("topology", "configured_path"), "/Users/d/private-topology" + ), + "[Rr]epository", + ), + (_replace_all_repository_paths, "public-safe"), + (_replace_all_repository_paths_with_other_demo_path, "match identity"), + ( + lambda state: _set_nested_repository_value( + state, ("local", "head"), "short" + ), + "head", + ), + ( + lambda state: _set_nested_repository_value( + state, ("local", "head"), "a" * 41 + ), + "head", + ), + ( + lambda state: _set_nested_repository_value( + state, ("local", "head"), "0" * 40 + ), + "head", + ), + ( + lambda state: _set_nested_repository_value( + state, ("worktrees", 0, "head"), "short" + ), + "head", + ), + ( + lambda state: _set_nested_repository_value( + state, ("worktrees", 0, "head"), "a" * 41 + ), + "head", + ), + ( + lambda state: _set_nested_repository_value(state, ("local", "dirty"), True), + "dirty state", + ), + ( + lambda state: _set_nested_repository_value( + state, ("worktrees", 0, "dirty_path_count"), 1 + ), + "dirty state", + ), + ( + lambda state: _set_nested_repository_value( + state, ("local", "upstream_observation_source"), "unavailable" + ), + "upstream", + ), + ( + lambda state: _set_nested_repository_value( + state, ("local", "upstream_branch"), "feature/foo" + ), + "upstream identity", + ), + ( + lambda state: _set_nested_repository_value( + state, ("worktrees", 0, "upstream_branch"), None + ), + "upstream identity", + ), + ( + lambda state: state["local"].update( + branch="foo", + upstream="origin/feature/foo", + upstream_branch="foo", + upstream_remote="origin", + ), + "upstream identity", + ), + ( + lambda state: _set_nested_repository_value( + state, ("local", "upstream_remote"), "../origin" + ), + "upstream identity", + ), + ( + lambda state: state["local"].update( + upstream="team/origin/main", + upstream_remote="team/origin", + ), + "does not match local", + ), + ( + lambda state: _set_nested_repository_value( + state, ("worktrees", 0, "upstream_remote"), "." + ), + "upstream identity", + ), + ( + lambda state: _set_nested_repository_value( + state, ("worktrees", 0, "branch"), None + ), + "detached upstream", + ), + ( + lambda state: _set_nested_repository_value( + state, ("worktrees", 0, "branch"), " " + ), + "branch", + ), + ( + lambda state: _set_nested_repository_value( + state, ("worktrees", 0, "branch"), "main.lock" + ), + "branch", + ), + ( + lambda state: _set_nested_repository_value( + state, ("local", "upstream"), "origin/" + ), + "upstream", + ), + ( + lambda state: _set_nested_repository_value( + state, ("local", "upstream"), "/Users/d/private" + ), + "upstream", + ), + ( + lambda state: _set_nested_repository_value( + state, ("local", "upstream"), "bad~remote/main" + ), + "upstream", + ), + ( + lambda state: _set_nested_repository_value( + state, ("local", "upstream"), "../main" + ), + "upstream", + ), + ( + lambda state: _set_nested_repository_value( + state, ("local", "upstream"), "origin/main.lock" + ), + "upstream", + ), + ( + lambda state: _set_nested_repository_value( + state, ("topology", "kind"), "fabricated" + ), + "topology kind", + ), + ( + lambda state: _set_nested_repository_value( + state, ("topology", "worktree_count"), 99 + ), + "worktree count", + ), + ( + lambda state: _set_nested_repository_value( + state, ("topology", "worktree_count"), True + ), + "worktree count", + ), + ( + lambda state: _set_nested_repository_value( + state, ("topology", "linked_worktree_count"), 99 + ), + "linked worktree count", + ), + ( + lambda state: _set_nested_repository_value( + state, ("topology", "selection", "candidate_count"), 99 + ), + "selection", + ), + ( + lambda state: _set_nested_repository_value( + state, ("topology", "selection", "head"), "a" * 41 + ), + "selection", + ), + ( + lambda state: _set_nested_repository_value( + state, ("topology", "selection", "candidate_count"), True + ), + "selection", + ), + ( + lambda state: state.update( + observed_at=(GENERATED_AT + timedelta(minutes=1)).isoformat() + ), + "match snapshot generated_at", + ), + ( + lambda state: state.update( + observed_at=(GENERATED_AT - timedelta(days=1)).isoformat() + ), + "match snapshot generated_at", + ), + ), +) +def test_canonical_payload_validation_rejects_repository_state_attacks( + mutation: object, + message: str, +) -> None: + fixture = build_contract_fixture() + repository_state = _complete_project(fixture)["repository_state"] + mutation(repository_state) + + with pytest.raises(ValueError, match=message): + validate_truth_snapshot_payload(fixture) + + +def test_canonical_payload_validation_rejects_remote_evidence_without_receipt() -> None: + fixture = build_contract_fixture() + unknown = next( + project + for project in fixture["projects"] + if project["security"]["receipt_state"] == "unknown" + ) + unknown["repository_state"]["remote_default_branch"] = deepcopy( + _complete_project(fixture)["repository_state"]["remote_default_branch"] + ) + + with pytest.raises(ValueError, match="production normalization"): + validate_truth_snapshot_payload(fixture) + + +def test_observed_remote_repository_requires_null_reason() -> None: + fixture = build_contract_fixture() + _complete_project(fixture)["repository_state"]["remote_default_branch"][ + "reason" + ] = "fabricated" + + with pytest.raises(ValueError, match="reason must be null when observed"): + validate_truth_snapshot_payload(fixture) + + +def test_stale_remote_repository_requires_observation_time() -> None: + fixture = build_contract_fixture() + stale = next( + project + for project in fixture["projects"] + if project["security"]["receipt_state"] == "stale" + ) + stale["repository_state"]["remote_default_branch"]["observed_at"] = None + + with pytest.raises(ValueError, match="observed_at.*stale"): + validate_truth_snapshot_payload(fixture) + + +def test_portable_repository_state_rejects_private_observation_failure_reason() -> None: + fixture = build_contract_fixture() + repository_state = fixture["projects"][0]["repository_state"] + fixture["projects"][0]["repository_state"] = { + "state": "unknown", + "observed_at": GENERATED_AT.isoformat(), + "reason_code": "repository_observation_failed", + "reason": "/Users/d/private-repository", + "remote_default_branch": repository_state["remote_default_branch"], + } + + with pytest.raises(ValueError, match="private user path"): + validate_truth_snapshot_payload(fixture) + + +@pytest.mark.parametrize( + ("field_path", "value"), + ( + (("security", "cohort_policy"), "/home/d/private-policy"), + ( + ("repository_state", "remote_default_branch", "reason"), + r"C:\Users\d\private-reason", + ), + ( + ("repository_state", "remote_default_branch", "reason"), + "/private/var/folders/zz/private-reason", + ), + ( + ("repository_state", "remote_default_branch", "reason"), + r"C:\Documents and Settings\d\private-reason", + ), + (("declared", "notes"), "owner@example.com"), + (("declared", "notes"), "owner@localhost"), + (("declared", "notes"), "/root/private-note"), + (("warnings",), ["/Users/d/private-warning"]), + ), +) +def test_portable_payload_rejects_private_identity_patterns( + field_path: tuple[str, ...], + value: object, +) -> None: + fixture = build_contract_fixture() + target = fixture["projects"][0] + for key in field_path[:-1]: + target = target[key] + target[field_path[-1]] = value + + with pytest.raises(ValueError, match="private user path or email"): + validate_truth_snapshot_payload(fixture) + + +def test_non_git_identity_cannot_claim_observed_repository_state() -> None: + fixture = build_contract_fixture() + fixture["projects"][0]["identity"]["has_git"] = False + + with pytest.raises(ValueError, match="Non-Git identity"): + validate_truth_snapshot_payload(fixture) + + +def test_git_identity_can_observe_not_a_repository_race() -> None: + fixture = build_contract_fixture() + project = fixture["projects"][0] + remote = project["repository_state"]["remote_default_branch"] + project["repository_state"] = { + "state": "not_a_repository", + "observed_at": GENERATED_AT.isoformat(), + "remote_default_branch": remote, + } + fixture["coverage"] = build_coverage_envelope( + projects=fixture["projects"], + notion_context_carried_forward=False, + notion_context_rows=0, + ) + + validate_truth_snapshot_payload(fixture) + + +@pytest.mark.parametrize( + ("field", "value"), (("default_branch", None), ("head_sha", "short")) +) +def test_canonical_payload_validation_rejects_invalid_remote_branch_shape( + field: str, + value: object, +) -> None: + fixture = build_contract_fixture() + _complete_project(fixture)["repository_state"]["remote_default_branch"][ + field + ] = value + + with pytest.raises(ValueError, match="Invalid remote default branch"): + validate_truth_snapshot_payload(fixture) + + +@pytest.mark.parametrize( + ("section", "field", "message"), + ( + (None, "repository_state", "requires remote_default_branch"), + ("security", "cohort_member", "cohort member"), + ), +) +def test_canonical_payload_validation_rejects_missing_project_fields( + section: str | None, + field: str, + message: str, +) -> None: + fixture = build_contract_fixture() + project = fixture["projects"][0] + target = project if section is None else project[section] + del target[field] + + with pytest.raises(ValueError, match=message): + validate_truth_snapshot_payload(fixture) + + +def test_fixture_contains_only_public_safe_synthetic_identity() -> None: + raw = fixture_bytes().decode().lower() + for forbidden in ("/users/", "saagpatel", "saagar", "@gmail.com", "gmail"): + assert forbidden not in raw diff --git a/tests/test_portfolio_truth_sources.py b/tests/test_portfolio_truth_sources.py index 50765ed6..42b31fdb 100644 --- a/tests/test_portfolio_truth_sources.py +++ b/tests/test_portfolio_truth_sources.py @@ -12,6 +12,7 @@ from datetime import datetime, timezone from src.portfolio_truth_sources import ( + WORKSPACE_EXCLUSION_REASONS, _dedupe_checkouts_by_origin, _is_ignored_project_dir, discover_workspace_projects, @@ -120,6 +121,26 @@ def test_ignore_predicate_matches_transient_dirs() -> None: assert workspace_exclusion_reason("prompts", nested=True) == "nested-content" +def test_workspace_exclusion_reason_domain_matches_every_policy_branch() -> None: + cases = ( + ("Codex Backups", False), + ("_preserved-local-artifacts", False), + ("scratch", False), + ("sweep-reports", False), + ("_fable-worktrees", False), + ("packets", True), + ("Misc:NoGoPRJs", False), + ("auraforge-smoke-export", False), + ("repo-tmp-1776063720", False), + ) + observed = { + workspace_exclusion_reason(name, nested=nested) + for name, nested in cases + } + + assert observed == WORKSPACE_EXCLUSION_REASONS + + def test_ignore_predicate_keeps_real_projects() -> None: # guard against over-broad matching: legit names that merely resemble a rule for name in ( diff --git a/tests/test_producer_preflight.py b/tests/test_producer_preflight.py index 454ab92c..23880dbd 100644 --- a/tests/test_producer_preflight.py +++ b/tests/test_producer_preflight.py @@ -1,5 +1,6 @@ from __future__ import annotations +import json import subprocess from datetime import UTC, datetime from pathlib import Path @@ -8,9 +9,11 @@ from src.producer_preflight import ( PREFLIGHT_SCHEMA_VERSION, + PREFLIGHT_PASS_CHECKS, ProducerEvidence, inspect_canonical_producer, load_producer_evidence, + producer_evidence_receipt_id, verify_evidence_still_current, ) @@ -51,7 +54,7 @@ def test_canonical_producer_passes_for_clean_matching_ref(tmp_path: Path) -> Non assert result.state == "pass" assert result.evidence is not None assert result.evidence.commit == commit - assert all(state == "pass" for state in result.checks.values()) + assert result.checks == PREFLIGHT_PASS_CHECKS def test_canonical_producer_fails_dirty_worktree(tmp_path: Path) -> None: @@ -79,9 +82,29 @@ def test_canonical_producer_missing_ref_is_unknown(tmp_path: Path) -> None: def test_evidence_rejects_head_change(tmp_path: Path) -> None: + repo, _ = _repo(tmp_path) + result = inspect_canonical_producer( + repo_root=repo, + expected_repository="saagpatel/GithubRepoAuditor", + expected_ref="refs/remotes/origin/main", + checkout_role="canonical-automation", + ) + assert result.evidence is not None + evidence = result.evidence + (repo / "README.md").write_text("changed\n") + _git(repo, "add", "README.md") + _git(repo, "commit", "-m", "move head") + with pytest.raises(ValueError, match="HEAD changed after preflight"): + verify_evidence_still_current(repo, evidence) + + +def test_currentness_rejects_invalid_in_memory_evidence_before_git_reads( + tmp_path: Path, +) -> None: repo, commit = _repo(tmp_path) evidence = ProducerEvidence( repository="saagpatel/GithubRepoAuditor", + expected_repository="attacker/other-repository", commit=commit, ref="refs/remotes/origin/main", checkout_role="canonical-automation", @@ -91,30 +114,39 @@ def test_evidence_rejects_head_change(tmp_path: Path) -> None: verified_at=datetime.now(UTC), receipt_id="sha256:" + "a" * 64, ) - (repo / "README.md").write_text("changed\n") - _git(repo, "add", "README.md") - _git(repo, "commit", "-m", "move head") - with pytest.raises(ValueError, match="HEAD changed after preflight"): + + with pytest.raises(ValueError, match="invalid before currentness verification"): verify_evidence_still_current(repo, evidence) def test_load_producer_evidence_accepts_passing_receipt(tmp_path: Path) -> None: path = tmp_path / "producer.json" + verified_at = "2026-07-10T12:00:00Z" + receipt_id = producer_evidence_receipt_id( + repository="saagpatel/GithubRepoAuditor", + expected_repository="saagpatel/GithubRepoAuditor", + commit="a" * 40, + ref="refs/remotes/origin/main", + checkout_role="canonical-automation", + checkout_path=str(tmp_path / "producer-repo"), + verified_at=verified_at, + ) path.write_text( __import__("json").dumps( { "schema_version": PREFLIGHT_SCHEMA_VERSION, "state": "pass", "repository": "saagpatel/GithubRepoAuditor", + "expected_repository": "saagpatel/GithubRepoAuditor", "commit": "a" * 40, "ref": "refs/remotes/origin/main", "checkout_role": "canonical-automation", "checkout_path": str(tmp_path / "producer-repo"), "worktree_clean": True, "dirty_path_count": 0, - "verified_at": "2026-07-10T12:00:00Z", - "receipt_id": "sha256:" + "a" * 64, - "checks": {}, + "verified_at": verified_at, + "receipt_id": receipt_id, + "checks": PREFLIGHT_PASS_CHECKS, } ) ) @@ -123,6 +155,90 @@ def test_load_producer_evidence_accepts_passing_receipt(tmp_path: Path) -> None: assert evidence.commit == "a" * 40 assert evidence.verified_at.tzinfo is not None + assert evidence.to_dict()["verified_at"] == verified_at + assert evidence.to_dict()["receipt_id"] == receipt_id + + +def test_producer_evidence_preserves_non_utc_serialized_timestamp() -> None: + verified_at = "2026-07-10T17:30:00+05:30" + payload = { + "repository": "saagpatel/GithubRepoAuditor", + "expected_repository": "saagpatel/GithubRepoAuditor", + "commit": "a" * 40, + "ref": "refs/remotes/origin/main", + "checkout_role": "canonical-automation", + "checkout_path": "/demo-workspace/producer", + "worktree_clean": True, + "dirty_path_count": 0, + "verified_at": verified_at, + "receipt_id": producer_evidence_receipt_id( + repository="saagpatel/GithubRepoAuditor", + expected_repository="saagpatel/GithubRepoAuditor", + commit="a" * 40, + ref="refs/remotes/origin/main", + checkout_role="canonical-automation", + checkout_path="/demo-workspace/producer", + verified_at=verified_at, + ), + } + + evidence = ProducerEvidence.from_dict(payload) + + assert evidence.to_dict() == payload + assert evidence.verified_at.utcoffset().total_seconds() == 0 + + +def test_producer_evidence_rejects_receipt_after_repository_tamper() -> None: + verified_at = "2026-07-10T12:00:00+00:00" + payload = { + "repository": "saagpatel/GithubRepoAuditor", + "expected_repository": "saagpatel/GithubRepoAuditor", + "commit": "a" * 40, + "ref": "refs/remotes/origin/main", + "checkout_role": "canonical-automation", + "checkout_path": "/demo-workspace/producer", + "worktree_clean": True, + "dirty_path_count": 0, + "verified_at": verified_at, + "receipt_id": producer_evidence_receipt_id( + repository="saagpatel/GithubRepoAuditor", + expected_repository="saagpatel/GithubRepoAuditor", + commit="a" * 40, + ref="refs/remotes/origin/main", + checkout_role="canonical-automation", + checkout_path="/demo-workspace/producer", + verified_at=verified_at, + ), + } + payload["repository"] = "attacker/other-repository" + + with pytest.raises(ValueError, match="does not match expected_repository"): + ProducerEvidence.from_dict(payload) + + +def test_producer_receipt_identity_is_not_delimiter_ambiguous() -> None: + common = { + "repository": "saagpatel/GithubRepoAuditor", + "expected_repository": "saagpatel/GithubRepoAuditor", + "commit": "a" * 40, + "checkout_path": "/demo-workspace/producer", + "verified_at": "2026-07-10T12:00:00Z", + } + left = { + **common, + "ref": "refs/heads/main\ncanonical", + "checkout_role": "producer", + } + right = { + **common, + "ref": "refs/heads/main", + "checkout_role": "canonical\nproducer", + } + assert "\n".join(left.values()) == "\n".join(right.values()) + + assert producer_evidence_receipt_id(**left) != producer_evidence_receipt_id( + **right + ) def test_load_producer_evidence_rejects_nonpassing_receipt(tmp_path: Path) -> None: @@ -138,3 +254,139 @@ def test_load_producer_evidence_rejects_nonpassing_receipt(tmp_path: Path) -> No with pytest.raises(ValueError, match="did not pass preflight"): load_producer_evidence(path) + + +def test_load_producer_evidence_rejects_v2_without_legacy_fallback( + tmp_path: Path, +) -> None: + path = tmp_path / "producer-v2.json" + path.write_text(json.dumps({"schema_version": "ghra_producer_preflight.v2"})) + + with pytest.raises( + ValueError, + match=r"schema mismatch.*ghra_producer_preflight\.v2.*v3", + ): + load_producer_evidence(path) + + +@pytest.mark.parametrize( + "checks", + ( + { + key: value + for key, value in PREFLIGHT_PASS_CHECKS.items() + if key != "worktree_clean" + }, + {**PREFLIGHT_PASS_CHECKS, "invented_check": "pass"}, + {**PREFLIGHT_PASS_CHECKS, "repository_identity": "fail"}, + ), +) +def test_load_producer_evidence_requires_exact_v3_pass_checks( + tmp_path: Path, + checks: dict[str, str], +) -> None: + repo, _ = _repo(tmp_path) + result = inspect_canonical_producer( + repo_root=repo, + expected_repository="saagpatel/GithubRepoAuditor", + expected_ref="refs/remotes/origin/main", + checkout_role="canonical-automation", + ) + payload = result.to_dict() + payload["checks"] = checks + path = tmp_path / "producer.json" + path.write_text(json.dumps(payload)) + + with pytest.raises(ValueError, match="checks must exactly match"): + load_producer_evidence(path) + + +def test_rewritten_repository_identity_failure_cannot_load_as_pass( + tmp_path: Path, +) -> None: + repo, _ = _repo(tmp_path) + result = inspect_canonical_producer( + repo_root=repo, + expected_repository="other-owner/other-repository", + expected_ref="refs/remotes/origin/main", + checkout_role="canonical-automation", + ) + assert result.state == "fail" + assert result.checks["repository_identity"] == "fail" + payload = result.to_dict() + payload.update(state="pass", checks=PREFLIGHT_PASS_CHECKS) + path = tmp_path / "rewritten-repository.json" + path.write_text(json.dumps(payload)) + + with pytest.raises(ValueError, match="does not match expected_repository"): + load_producer_evidence(path) + + +def test_rewritten_head_ref_failure_fails_currentness_and_publication( + tmp_path: Path, +) -> None: + from src.portfolio_truth_publish import ( + PortfolioTruthPublishError, + publish_portfolio_truth, + ) + + repo, prior_commit = _repo(tmp_path) + (repo / "README.md").write_text("new head\n") + _git(repo, "add", "README.md") + _git(repo, "commit", "-m", "advance head only") + result = inspect_canonical_producer( + repo_root=repo, + expected_repository="saagpatel/GithubRepoAuditor", + expected_ref="refs/remotes/origin/main", + checkout_role="canonical-automation", + ) + assert result.state == "fail" + assert result.evidence is not None + assert result.evidence.commit != prior_commit + assert result.checks["head_matches_expected_ref"] == "fail" + payload = result.to_dict() + payload.update(state="pass", checks=PREFLIGHT_PASS_CHECKS) + path = tmp_path / "rewritten-ref.json" + path.write_text(json.dumps(payload)) + + evidence = load_producer_evidence(path) + with pytest.raises(ValueError, match="Producer ref changed after preflight"): + verify_evidence_still_current(repo, evidence) + with pytest.raises(PortfolioTruthPublishError, match="Producer ref changed"): + publish_portfolio_truth( + workspace_root=tmp_path / "workspace", + output_dir=tmp_path / "output", + registry_output=tmp_path / "registry.md", + portfolio_report_output=tmp_path / "report.md", + producer_evidence=evidence, + producer_repo_root=repo, + ) + + +def test_currentness_rechecks_origin_and_reports_missing_ref( + tmp_path: Path, +) -> None: + repo, _ = _repo(tmp_path) + result = inspect_canonical_producer( + repo_root=repo, + expected_repository="saagpatel/GithubRepoAuditor", + expected_ref="refs/remotes/origin/main", + checkout_role="canonical-automation", + ) + assert result.evidence is not None + evidence = result.evidence + + _git(repo, "remote", "set-url", "origin", "git@github.com:attacker/other.git") + with pytest.raises(ValueError, match="origin repository changed"): + verify_evidence_still_current(repo, evidence) + + _git( + repo, + "remote", + "set-url", + "origin", + "git@github.com:saagpatel/GithubRepoAuditor.git", + ) + _git(repo, "update-ref", "-d", evidence.ref) + with pytest.raises(ValueError, match="Unable to verify producer ref"): + verify_evidence_still_current(repo, evidence)