Skip to content

docs: add developer setup guides and improve deployment scripts#53

Merged
caifeizhi merged 1 commit intooceanbase:mainfrom
caifeizhi:main
Feb 13, 2026
Merged

docs: add developer setup guides and improve deployment scripts#53
caifeizhi merged 1 commit intooceanbase:mainfrom
caifeizhi:main

Conversation

@caifeizhi
Copy link
Member

  • Add developer setup guides (English and Chinese)
  • Update README to link to developer guides
  • Fix launch_backend_service.sh to start sync_data_source service
  • Add Tailwind CSS plugin auto-fix script
  • Update service_conf.yaml for SeekDB deployment
  • Update pyproject.toml dependencies

Summary

Solution Description

- Add developer setup guides (English and Chinese)
- Update README to link to developer guides
- Fix launch_backend_service.sh to start sync_data_source service
- Add Tailwind CSS plugin auto-fix script
- Update service_conf.yaml for SeekDB deployment
- Update pyproject.toml dependencies
@dosubot dosubot bot added the size:XL This PR changes 500-999 lines, ignoring generated files. label Feb 12, 2026
@dosubot
Copy link

dosubot bot commented Feb 12, 2026

Related Documentation

Checked 8 published document(s) in 1 knowledge base(s). No updates required.

How did I do? Any feedback?  Join Discord

@caifeizhi caifeizhi requested a review from Copilot February 12, 2026 14:06
@dosubot dosubot bot added dependencies Pull requests that update a dependency file documentation Improvements or additions to documentation labels Feb 12, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds end-to-end developer setup documentation (EN/ZH) and adjusts local development/deployment tooling to better support a SeekDB (OceanBase) based environment, including frontend install-time Tailwind plugin patching and updated Python dependency sourcing.

Changes:

  • Add English/Chinese developer setup guides and link them from READMEs.
  • Update backend launch script to start sync_data_source and set OceanBase-related defaults; adjust service_conf.yaml for SeekDB/OceanBase.
  • Add Tailwind CSS plugin auto-fix script hooked into web’s postinstall, and update uv/Python dependency configuration (incl. graspologic).

Reviewed changes

Copilot reviewed 10 out of 11 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
web/scripts/fix-tailwindcss-plugin.js New Node script to patch known UmiJS Tailwind plugin issues after install.
web/package.json Run Tailwind plugin fix script during postinstall.
uv.toml Adds repo-wide uv index mirror configuration.
uv.lock Updates lock resolution (incl. prerelease mode) and switches graspologic source.
pyproject.toml Moves graspologic to registry version and sets uv index default.
docs/developer-setup-guide.md New English source deployment guide (SeekDB + backend + frontend).
docs/developer-setup-guide-zh.md New Chinese source deployment guide.
docker/launch_backend_service.sh Ensure running from project root; add OceanBase defaults; start sync_data_source.
conf/service_conf.yaml Update default config for SeekDB/OceanBase + OpenDAL + task executor queue type.
README.md Link to the new developer setup guide.
README_zh.md Link to the new Chinese developer setup guide.

Comment on lines +8 to +12
name: 'powerrag'
user: 'root'
password: 'infini_rag_flow'
host: 'localhost'
port: 5455
password: 'powerrag'
host: '127.0.0.1'
port: 2881
Copy link

Copilot AI Feb 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This config switches the metadata DB to use the root account with a hard-coded password. Even for dev defaults, using a privileged user and committing real credentials makes accidental exposure/misuse more likely; prefer a dedicated least-privilege DB user and/or read the password from environment variables (keeping this file as a template/example).

Copilot uses AI. Check for mistakes.
Comment on lines 178 to +180
[[tool.uv.index]]
url = "https://pypi.tuna.tsinghua.edu.cn/simple"
default = true
Copy link

Copilot AI Feb 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Setting this index as default = true forces all uv resolutions to use the Tsinghua mirror by default, which can break installs in environments where the mirror is unreachable or incomplete. Consider keeping this as an optional index (not default) and documenting how to enable it, rather than changing global default behavior in-repo.

Copilot uses AI. Check for mistakes.
Comment on lines +1 to +3
# uv 加速配置
# PyPI 下载镜像(清华源)
index-url = "https://pypi.tuna.tsinghua.edu.cn/simple"
Copy link

Copilot AI Feb 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Committing a repo-wide uv.toml with a hard-coded mirror makes installs depend on that mirror for every contributor/CI environment. Consider removing this file from the repo (or making it an example like uv.toml.example) and documenting the mirror as an opt-in setting instead.

Copilot uses AI. Check for mistakes.
Comment on lines +94 to +98
if [ -n "$JEMALLOC_PATH" ]; then
LD_PRELOAD=$JEMALLOC_PATH $PY rag/svr/task_executor.py "$task_id"
else
$PY rag/svr/task_executor.py "$task_id"
fi
Copy link

Copilot AI Feb 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because this script runs with set -e, a non-zero exit from task_executor.py will terminate the whole script immediately, so the retry loop won’t actually retry. Run the python command in a context that suppresses -e (e.g., temporarily set +e, or append || true and capture $?) so failures can be handled by the retry logic.

Copilot uses AI. Check for mistakes.
Comment on lines +142 to +146
while ! $STOP && [ $retry_count -lt $MAX_RETRIES ]; do
echo "Starting sync_data_source.py (Attempt $((retry_count+1)))"
$PY rag/svr/sync_data_source.py
EXIT_CODE=$?
if [ $EXIT_CODE -eq 0 ]; then
Copy link

Copilot AI Feb 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This retry loop won’t work as intended under set -e: if sync_data_source.py exits non-zero, the script will exit before EXIT_CODE=$? is reached. Wrap the python invocation to avoid set -e aborting (temporarily disable -e or use cmd; EXIT_CODE=$? with set +e/set -e around it).

Copilot uses AI. Check for mistakes.
Comment on lines +37 to 40
user: 'root'
password: 'powerrag'
host: '127.0.0.1'
port: 2881
Copy link

Copilot AI Feb 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With scheme: 'mysql', the OceanBase connection code reads host/port/user/password from the top-level mysql section, not from oceanbase.config (only db_name is used). Keeping duplicate credentials here is misleading and can drift; either remove the unused fields from oceanbase.config or switch scheme to the custom mode so oceanbase.config is authoritative.

Suggested change
user: 'root'
password: 'powerrag'
host: '127.0.0.1'
port: 2881

Copilot uses AI. Check for mistakes.
@caifeizhi caifeizhi merged commit 0539bac into oceanbase:main Feb 13, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file documentation Improvements or additions to documentation size:XL This PR changes 500-999 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants