feat(contrib/dashboard): DUODUO.md manifest, scripts/, and sample descriptor#38
feat(contrib/dashboard): DUODUO.md manifest, scripts/, and sample descriptor#386m1w wants to merge 1 commit into
Conversation
… descriptor - DUODUO.md: full YAML frontmatter manifest per antmanler's spec (name, type, version, requires, installs, scripts) - scripts/sync-channels.sh: cron wrapper for channel refresh + descriptor fill - scripts/fill-empty-descriptors.py: populates stub descriptors from template - scripts/refresh-channel-map.py: moved into scripts/ subdirectory - scripts/save-api.py: moved into scripts/ subdirectory - config/sample-descriptor.md: default channel descriptor template with participation rules framework Follows up on PR openduo#25 review feedback. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
Thanks for the follow-up! Good instincts on organizing scripts and adding the sample descriptor. A few things need to be addressed before we can merge. Must fix1. Hardcoded pathsAll scripts hardcode import json, urllib.request
def get_runtime_paths(daemon_url="http://localhost:20233"):
req = urllib.request.Request(f"{daemon_url}/rpc",
data=json.dumps({"jsonrpc":"2.0","id":1,"method":"system.runtime.info"}).encode(),
headers={"Content-Type": "application/json"})
with urllib.request.urlopen(req) as r:
result = json.loads(r.read())["result"]
return result["runtime_dir"], result["kernel_dir"]Same for dashboard.html — See 2. Rebase on current mainYour branch is based on an older version. The current
Your PR reverts all of these back to the old 3. Title "WATU" → "Duoduo"The dashboard title and brand name must stay "Duoduo", not "WATU". 4. Remove hardcoded entity skipif (ent.file === "antmanler.md" || ent.file === "feishu-user-primary.md") return;This is instance-specific. Remove it. 5. No
|
Summary
Follow-up to PR #25, addressing antmanler's review feedback:
duoduo contrib installtoolingsync-channels.sh: cron wrapper for automated channel refreshfill-empty-descriptors.py: populates stub descriptors from template when bot joins new groupsrefresh-channel-map.pyandsave-api.pymoved into scripts/Design notes
DUODUO.md(notCLAUDE.md) per antmanler's guidance to avoid prompt injectionrefresh-channel-map.py,save-api.py) can be removed fromcontrib/dashboard/root after mergeTest plan
DUODUO.mdYAML frontmatter parses correctlyscripts/sync-channels.shruns refresh + fill-empty-descriptorsconfig/sample-descriptor.mdhas correct placeholder format🤖 Generated with Claude Code