Repository navigation
Add searchable ecosystem manifest and token-efficiency guide - #3
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 07a2bb5226
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| "components": [ | ||
| { | ||
| "repository": "anthropics/claude-code", |
There was a problem hiding this comment.
Register the new source-review decision array
This new /components collection contains five repository recommendations and acceptance gates, but it is not registered as a supplement in catalogs/us-equities/decision-index.json. Consequently, the validated repository union and catalog lookup omit these current reviews, while the explorer exposes them only through untyped, duplicated annotations. Register this array with scripts/catalog_decisions.py --write --supplement docs/ecosystem/source-review.json#/components and rebuild the dependent artifacts.
AGENTS.md reference: AGENTS.md:L25-L29
Useful? React with 👍 / 👎.
| assigned = [layer["id"] for layer in layers if layer["id"] != "beyond" and ( | ||
| key in [name.casefold() for name in layer["repositories"]] | ||
| or any(word.casefold() in haystack for word in layer["keywords"]))] |
There was a problem hiding this comment.
Match layer keywords as terms instead of substrings
Layer assignment currently tests arbitrary substrings, so short keywords generate incorrect navigation tags. In the committed data, for example, prometheus/prometheus is classified under retrieval because the retrieval keyword rag occurs inside storage, even though its record describes metrics and alerting. Tokenize or boundary-match keywords (while preserving intentional stems such as orchestrat) so layer counts and filters do not return unrelated repositories.
Useful? React with 👍 / 👎.
|
|
||
| def render(root): | ||
| data = build_data(root) | ||
| template = safe_file(root, TEMPLATE).read_text(encoding="utf-8") |
There was a problem hiding this comment.
Include the template in embedded provenance
The template is read only after build_data() has finalized the inputs array, so docs/ecosystem/template.html never appears in the explorer's embedded provenance. When its CSS, application script, or CSP changes and the page is rebuilt, the page still claims a complete set of public input hashes while omitting the source that controls its rendering and security behavior. Hash and track the raw template before serializing the provenance data.
Useful? React with 👍 / 👎.
| depth = " ".join(fields[name] for name in ( | ||
| "evidence_level", "review_level", "review_depth", "evidence_depth")) | ||
| reviewed = reviewed or "source_review" in depth or "primary_source" in depth |
There was a problem hiding this comment.
Recognize the repository's declared source-review levels
The review classifier recognizes only strings containing source_review or primary_source, but registered records also use review levels such as source_sections_reviewed and selected_primary_files. As a result, the committed explorer marks reviewed repositories including duckdb/duckdb, openfigi/api-examples, and ariga/atlas as not source-reviewed; records without execution then appear under DISCOVERY / METADATA, and the Source reviewed filter excludes them. Classify the repository's declared review-level vocabulary explicitly instead of relying on these two substrings.
AGENTS.md reference: AGENTS.md:L25-L29
Useful? React with 👍 / 👎.
| def stamp(value): | ||
| for key in ("retrieved_at", "checked_at", "recorded_at_utc", "recorded_at", | ||
| "observed_at_utc", "observed_at", "executed_at", "date"): | ||
| if isinstance(value.get(key), str): | ||
| return value[key] | ||
| return "Date not recorded in this source" |
There was a problem hiding this comment.
Read the timestamp fields used by canonical receipts
The timestamp extractor omits field names already used by canonical receipts, including observed_utc, started_at_utc, completed_at_utc, observed_date, and observed_date_utc. The generated explorer therefore displays Date not recorded in this source for ten dated receipt IDs—such as the Claude convergence, Alpaca historical, and identity-readiness receipts—even though their exact timestamps are present. Add the existing receipt timestamp variants or normalize receipt dates through a shared schema.
Useful? React with 👍 / 👎.
The ecosystem catalog is spread across source cards, component pins and receipts. This adds a self-contained HTML manifest that makes those records searchable and connects native agents, skills, workers, memory, retrieval, evaluation and research in one view.
The explorer preserves the 504-repository / 342-star public index and adds Tavily as a separate dated integration. Token efficiency is a core view: native caching and compaction, scoped retrieval, progressive skill loading, bounded outputs, compact worker handoffs and complete usage accounting. Source review, historical execution, installed files and current-host acceptance remain distinct.
The standard-library builder embeds all data, styles and scripts, includes input hashes, escapes source data and rejects unsafe paths/links. The page makes no background network requests. CI checks that the committed HTML matches its inputs.
Validation: