Repository navigation
Add the jiuwenswarm adapter (kb init pilot 2) - #246
Merged
Merged
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. |
A new human-reviewed adapter for openJiuwen-ai/jiuwenswarm. It is the
empty-KB pilot for kb init: no knowledge pages exist yet, and
`kb init jiuwenswarm` creates repos/jiuwenswarm/.
Upstream facts checked on 2026-09-30: the repo is public, its default
branch is develop, and it is written in Python. The package is
jiuwenswarm/, plus the jiuwenbox sandbox service in
jiuwenbox/src/jiuwenbox/. Tests live under tests/. Docs are in docs/zh
and docs/en, which hold the same set of pages. There are no GitHub
Actions workflows.
The manifest follows afd-plugin's shape, with only the required
sections:
- repo: full_name, aliases, develop as default branch, python.
- knowledge.repo_subdir: repos/jiuwenswarm.
- push: disabled.
- knowledge_lifecycle: enabled false, mode shadow, release trigger none,
upstream_visibility public.
- init:
- seeds: two general/ pages, linked.
- doc_globs: the Chinese docs only, so the doc corpus is not
paid for twice.
- source_roots: both packages.
- exclude: tests, resources, node_modules, __init__.
Adapters without knowledge pages are already handled. Direct routing
returns None when a repo has no _routes.yaml. The SDK lists only repos
that have an _index.md. The full suite passes unchanged.
test_kb_init_pilot_jiuwenswarm.py checks the adapter, the init block,
the seeds, and that repos/jiuwenswarm/ does not exist yet.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
check_wiki_lint rejects any page tag that is not listed in doc/knowledge/SCHEMA.md's 标签分类法 section, and kb init tags every page it writes with the repo name. Until jiuwenswarm is listed there, every kb init stage for this repo is blocked. Add it next to afd-plugin, and test through the lint's own taxonomy() reader. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
tzhouam
force-pushed
the
kb/init-jiuwenswarm-adapter
branch
from
September 30, 2026 15:35
c82a9a6 to
ab6fa24
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds a new human-reviewed adapter,
adapters/jiuwenswarm/manifest.yaml, for https://github.com/openJiuwen-ai/jiuwenswarm. This is kb init pilot 2 (design kb-init §12), the empty-KB path: noknowledge/repos/jiuwenswarm/exists yet, andkb init jiuwenswarmwill create it.Upstream facts (checked 2026-09-30)
develop, Python (≥3.11). The PyPI project name isworkswarm.jiuwenswarm/(~1.1k.py;channels/also holds TS frontends) and the sandbox servicejiuwenbox/src/jiuwenbox/.tests/(unit, integration, system, ui_e2e), plus some in-packagejiuwenswarm/tests.docs/zh(73.md) anddocs/en(68.md) cover the same pages in two languages. AlsoREADME_CN.md,README.md, andTESTING.md(zh)..github/is absent).Manifest
The shape follows afd-plugin, with only the required sections:
repo:full_name, aliases,default_branch: develop,language: python, andpath: ${JIUWENSWARM_REPO}(same env-var convention as afd).knowledge.repo_subdir: repos/jiuwenswarm.push.allowed: false.knowledge_lifecycle: {enabled: false, mode: shadow, release.trigger: none, upstream_visibility: public}.init:doc_globs: the Chinese docs only (README_CN.md,TESTING.md,docs/zh/**/*.md,jiuwenbox/README_CN.md). The zh/en trees are the same set, so reading both would double the doc-corpus cost.source_roots: [jiuwenswarm/, jiuwenbox/src/jiuwenbox/].exclude: tests, resources, node_modules,__init__.py.Seeds (general/ only, linked)
general/review/rules.md: repo-neutral design-review rules.general/ci/guides/inspect-existing-tests-first.md: the repo has a large multi-level test tree, so reviews should start from existing tests.No sibling repo KB transfers clearly: jiuwenswarm is an agent and messaging-channel app, not a vLLM-family repo.
Knowledge-less adapter: checked, nothing breaks
Nonewhen a repo has no_routes.yaml.supported_repositorieslists only repos that have an_index.md, so jiuwenswarm appears only after kb init.AdapterRegistry,test_repo_neutral_core, and the SDK/MCP/routing tests all pass unchanged. The full suite is green.Tests
test/test_kb_init_pilot_jiuwenswarm.pychecks that the adapter loads, push is disabled, and the lifecycle is disabled/shadow/public. It also checks that the init block parses, all seeds aregeneral/and exist, and thatrepos/jiuwenswarm/does not exist yet.imc-check.shreturns rc=0 (full pytest, doc linters, SPEC freshness--strict, knowledge linters).20260930T103027.247143Z-3ea89bed1f-codeloop-i1-approve-2ooz_r6f.md).Stacked on kb/init-integration (#239…#243); retarget to main after those merge.
🤖 Generated with Claude Code