fix(codex): pass directory listing validation (category + logo/icon)#306
fix(codex): pass directory listing validation (category + logo/icon)#306efenocchi wants to merge 2 commits into
Conversation
…o/icon) The official plugin directory rejected the manifest: interface.category must be title-case (Productivity), and interface.logo + interface.composerIcon are required square images. Capitalize the category and add 1024x1024 square PNGs (rasterized from docs/public/hivemind-logo.svg) under harnesses/codex/assets/.
📝 WalkthroughWalkthroughThe Codex plugin manifest updates top-level package metadata and expands interface metadata with revised capability labels, policy links, prompt, branding, asset, and screenshot fields. ChangesCodex plugin manifest
Estimated code review effort: 1 (Trivial) | ~2 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Coverage ReportNo Generated for commit 49a97ae. |
Mirror the accepted skills-only curated plugins (sentry, coderabbit): add homepage, license (Apache-2.0), and the interface fields the directory expects (privacyPolicyURL, termsOfServiceURL, defaultPrompt, brandColor, screenshots). Flatten the logo/composerIcon to opaque 512x512 squares. The directory upload is packaged skills-only (no hooks/bundle) to match the accepted plugin shape.
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@harnesses/codex/.codex-plugin/plugin.json`:
- Around line 5-19: Fix the broken asset references in the plugin manifest by
adding the missing icon.png and logo.png files under the .codex-plugin assets
directory, or update the manifest’s asset paths to point to existing files;
ensure all referenced assets resolve correctly.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: b117b588-12db-44dc-9c68-31d43f2c6b27
⛔ Files ignored due to path filters (2)
harnesses/codex/assets/icon.pngis excluded by!**/*.pngharnesses/codex/assets/logo.pngis excluded by!**/*.png
📒 Files selected for processing (1)
harnesses/codex/.codex-plugin/plugin.json
| "author": { | ||
| "name": "Activeloop", | ||
| "url": "https://deeplake.ai" | ||
| }, | ||
| "homepage": "https://deeplake.ai", | ||
| "repository": "https://github.com/activeloopai/hivemind", | ||
| "license": "Apache-2.0", | ||
| "keywords": [ | ||
| "memory", | ||
| "deeplake", | ||
| "persistent-memory", | ||
| "session-capture", | ||
| "search" | ||
| ], | ||
| "skills": "./skills/", |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Description: Verify plugin asset files exist and manifest references are consistent.
# Check that the referenced asset files exist relative to the plugin directory
PLUGIN_DIR="harnesses/codex/.codex-plugin"
echo "=== Checking assets ==="
for f in "$PLUGIN_DIR/assets/icon.png" "$PLUGIN_DIR/assets/logo.png"; do
if [ -f "$f" ]; then
echo "FOUND: $f"
# Check dimensions are square
file "$f"
else
echo "MISSING: $f"
fi
done
# List the full plugin tree to confirm skills-only packaging
echo "=== Plugin tree ==="
find "$PLUGIN_DIR" -type f | sortRepository: activeloopai/hivemind
Length of output: 355
🏁 Script executed:
#!/bin/bash
set -euo pipefail
PLUGIN_JSON="harnesses/codex/.codex-plugin/plugin.json"
echo "=== Manifest excerpt ==="
nl -ba "$PLUGIN_JSON" | sed -n '1,120p'
echo "=== Referenced asset paths ==="
python3 - <<'PY'
import json, pathlib
p = pathlib.Path("harnesses/codex/.codex-plugin/plugin.json")
data = json.loads(p.read_text())
for key in ("composerIcon", "logo"):
print(f"{key}: {data.get(key)}")
PYRepository: activeloopai/hivemind
Length of output: 224
Fix the broken asset references. ./assets/icon.png and ./assets/logo.png are missing from harnesses/codex/.codex-plugin/, so the manifest points at dead paths for the icon and logo.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@harnesses/codex/.codex-plugin/plugin.json` around lines 5 - 19, Fix the
broken asset references in the plugin manifest by adding the missing icon.png
and logo.png files under the .codex-plugin assets directory, or update the
manifest’s asset paths to point to existing files; ensure all referenced assets
resolve correctly.
What
The official OpenAI plugin directory rejected the uploaded manifest with three validation errors. This fixes them at the source so the next release ships a valid manifest.
interface.categorymust be title-caseproductivity→Productivityinterface.logorequired (square image)./assets/logo.png(1024×1024)interface.composerIconrequired (square image)./assets/icon.png(1024×1024)Both PNGs are rasterized from
docs/public/hivemind-logo.svgand padded to an exact square canvas (no distortion).Verified
categoryisProductivity;logo/composerIconresolve to the new assets.Follow-up (login-bound)
The rest of the submission stays with the account owner: identity verification + Apps Management: Write, listing URLs, starter prompts, and the 5/3 test cases from
harnesses/codex/SUBMISSION.md.Summary by CodeRabbit