Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions config/notion-project-map.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@
"bridge-db": {
"localProjectId": "34cc21f1-caf0-81cd-9650-cf2253d7afd4"
},
"personal-ops": {
"localProjectId": "35bc21f1-caf0-81cb-9426-dd264ef668b2"
},
"cross-system-smoke": {
"localProjectId": "378c21f1-caf0-81ec-b2db-f8a73ab0fb28"
},
Expand All @@ -17,6 +20,15 @@
"PortfolioCommandCenter": {
"localProjectId": "378c21f1-caf0-819a-86c3-c0c41d12eef3"
},
"GithubRepoAuditor": {
"localProjectId": "377c21f1-caf0-817d-9d57-e59a673dd0b7"
},
"Grotto": {
"localProjectId": "377c21f1-caf0-81d3-add8-f9f31584d5ae"
},
"Pressfield": {
"localProjectId": "377c21f1-caf0-8175-8858-ee479b9ef673"
},
"CryptForge": {
"localProjectId": "326c21f1-caf0-8169-a680-e1ef6f5157e7"
},
Expand Down
105 changes: 45 additions & 60 deletions config/portfolio-catalog.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -87,17 +87,6 @@ repos:
target_maturity: operating
doctor_standard: full
notes: Owns Raycast script commands, active-project verification routing, read-only ops snapshots, and mirrored Codex operating-layer prompt/eval snapshots for /Users/d.
_machine/machine-control-tower/bin:
owner: d
purpose: nested command-bin folder under the machine control tower; not an independent portfolio project
lifecycle_state: archived
review_cadence: monthly
intended_disposition: archive
category: infrastructure
tool_provenance: codex
maturity_program: archive
target_maturity: archived
notes: Enrolled only to prevent the nested bin directory from being treated as a standalone decision-needed project.
agent-bridge:
owner: d
purpose: local SQLite-backed MCP shared-state bus for coordinating coding agents
Expand Down Expand Up @@ -454,6 +443,20 @@ repos:
target_maturity: operating
automation_eligible: false
notes: Use docs/CURRENT-STATE.md for dated release posture, but AGENTS.md is the current primary context contract required by portfolio truth.
mcp-trust:
owner: d
purpose: neutral public trust registry and scan-backed grading surface for MCP servers
lifecycle_state: active
criticality: high
review_cadence: weekly
intended_disposition: maintain
category: infrastructure
tool_provenance: unknown
maturity_program: maintain
target_maturity: operating
automation_eligible: false
doctor_standard: basic
notes: Fresh v0.1.0 Python/FastAPI/Typer repo with v1 launch runbook; public launch is gated on real catalog seeding, sandboxed engine scans, live deploy smoke, and outreach loop validation.
ModelColosseum:
owner: d
lifecycle_state: active
Expand Down Expand Up @@ -550,10 +553,11 @@ repos:
tool_provenance: claude-code
GhostRoutes:
owner: d
lifecycle_state: active
review_cadence: weekly
intended_disposition: maintain
lifecycle_state: archived
review_cadence: quarterly
intended_disposition: archive
tool_provenance: claude-code
notes: Archived from active operator attention on 2026-06-13 because the local git object database cannot read HEAD (`bad tree object HEAD`). Repair should be a deliberate reclone/reset lane, not an in-place portfolio audit mutation.
Liminal:
owner: d
lifecycle_state: active
Expand Down Expand Up @@ -625,15 +629,6 @@ repos:
intended_disposition: maintain
category: fun
tool_provenance: codex
StatusPage:
owner: d
purpose: self-hosted status page with built-in monitoring and GitHub OAuth admin
flow
lifecycle_state: active
review_cadence: monthly
intended_disposition: maintain
category: infrastructure
tool_provenance: codex
MoneyPRJsViaGPT/StatusPage:
owner: d
purpose: GPT-built StatusPage SaaS/beta variant kept as an archived reference
Expand All @@ -652,14 +647,6 @@ repos:
intended_disposition: maintain
category: it-work
tool_provenance: codex
ITPRJsViaClaude/IncidentWorkbench:
owner: d
purpose: earlier production-ready IT incident review workbench kept for reference
lifecycle_state: maintenance
review_cadence: quarterly
intended_disposition: maintain
category: it-work
tool_provenance: unknown
KBFreshnessDetector:
owner: d
lifecycle_state: maintenance
Expand All @@ -682,14 +669,6 @@ repos:
intended_disposition: maintain
category: fun
tool_provenance: codex
FunGamePrjs/OrbitForge:
owner: d
purpose: older build-ready staging copy of the OrbitForge gravity simulator
lifecycle_state: dormant
review_cadence: quarterly
intended_disposition: archive
category: fun
tool_provenance: unknown
PersonalKBDrafter:
owner: d
lifecycle_state: maintenance
Expand Down Expand Up @@ -824,13 +803,6 @@ repos:
review_cadence: weekly
intended_disposition: maintain
category: fun
ApplyKit-public:
owner: d
lifecycle_state: active
review_cadence: weekly
intended_disposition: maintain
category: commercial
tool_provenance: codex
Grotto:
owner: d
lifecycle_state: active
Expand Down Expand Up @@ -887,6 +859,20 @@ repos:
review_cadence: weekly
intended_disposition: maintain
category: infrastructure
cross-provider-egress-guard:
owner: d
purpose: destination-aware egress-control hardening lane for Claude Code and Codex hook surfaces
lifecycle_state: active
criticality: high
review_cadence: weekly
intended_disposition: maintain
category: infrastructure
tool_provenance: claude-code
maturity_program: maintain
target_maturity: operating
automation_eligible: false
doctor_standard: basic
notes: Lane is live end-to-end as of 2026-06-12; keep residual hardening, policy widening, and hook deployment under explicit operator review.
da-scaffold:
owner: d
lifecycle_state: active
Expand All @@ -913,6 +899,19 @@ repos:
maturity_program: experiment
target_maturity: functional
notes: Evidence/history-style docs; use only when a cross-system architecture or conformance decision is active.
fable-outputs:
owner: d
purpose: time-boxed Fable-window artifact and campaign-output workspace
lifecycle_state: experimental
criticality: medium
review_cadence: weekly
intended_disposition: experiment
category: infrastructure
tool_provenance: claude-ai
maturity_program: experiment
target_maturity: functional
automation_eligible: false
notes: Active through the June 10-22, 2026 Fable window; staged harness/config changes are operator-installed only, then archive or park the campaign workspace after final index review.
portfolio-index:
owner: d
purpose: public-safe static portfolio index for hiring-manager review
Expand Down Expand Up @@ -943,26 +942,12 @@ repos:
review_cadence: monthly
intended_disposition: maintain
category: fun
GithubRepoAuditor-public:
owner: d
lifecycle_state: active
review_cadence: monthly
intended_disposition: maintain
category: infrastructure
tool_provenance: codex
LegalDocsReview:
owner: d
lifecycle_state: active
review_cadence: monthly
intended_disposition: maintain
category: it-work
PomGambler-prod:
owner: d
lifecycle_state: active
review_cadence: monthly
intended_disposition: maintain
category: fun
tool_provenance: codex
Relay:
owner: d
lifecycle_state: active
Expand Down
9 changes: 8 additions & 1 deletion config/project-registry-overrides.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,13 +36,20 @@
},
"notion_projection_policy_schema_version": "notion_projection_policy.v1",
"notion_title_aliases": {
"DesktopTerrarium": "desktop_terrarium",
"DesktopPEt-ready": "DesktopPEt",
"EarthPulse-readiness": "EarthPulse",
"FreelanceInvoice": "FreeLanceInvoice",
"GithubRepoAuditor-public": "GithubRepoAuditor",
"KBFreshness": "KBFreshnessDetector",
"Notion Operating System": "Notion",
"OrbitMechanics": "OrbitMechanic",
"OrbitForge (staging)": "OrbitForge",
"Personal Ops": "operator-os-docs",
"PomGambler-prod": "PomGambler"
"PhantomFrequencies": "Phantom Frequencies",
"PomGambler-prod": "PomGambler",
"seismoscope": "Seismoscope",
"signal-noise": "Signal & Noise"
},
"notion_projection_only_rows": {
"app": "local runtime/app shell placeholder; not a portfolio-truth repo",
Expand Down
1 change: 1 addition & 0 deletions docs/portfolio-context-contract.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@ Accepted aliases include:
- `Local Development`
- `Commands`
- `Quick Start`
- `Quickstart`
- `Build & Run`
- `Getting Started`
- `Usage`
Expand Down
1 change: 1 addition & 0 deletions src/portfolio_context_contract.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@
"run instructions",
"development commands",
"quick start",
"quickstart",
"build run",
"getting started",
"usage",
Expand Down
11 changes: 11 additions & 0 deletions tests/test_portfolio_context_contract.py
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,17 @@ def test_run_instructions_in_subsections_of_quick_start(tmp_path):
assert result.run_instructions_present is True


def test_run_instructions_match_quickstart_heading(tmp_path):
_write(
tmp_path,
"README.md",
"# Proj\n\nA tool that does a thing.\n\n"
"## Quickstart\n\n```bash\nproj serve\n```\n",
)
result = analyze_project_context(tmp_path, ["README.md"])
assert result.run_instructions_present is True


def test_heading_containing_alias_term_matches(tmp_path):
# "## Commands By Mode" contains the "commands" alias but is not an exact match.
_write(
Expand Down