Skip to content

Move codebase into LiOS-webrtc/ subfolder#2

Merged
DanielMao1 merged 1 commit into
mainfrom
restructure
Jun 1, 2026
Merged

Move codebase into LiOS-webrtc/ subfolder#2
DanielMao1 merged 1 commit into
mainfrom
restructure

Conversation

@DanielMao1
Copy link
Copy Markdown
Contributor

@DanielMao1 DanielMao1 commented Jun 1, 2026

Restructure the repo so this codebase lives under LiOS-webrtc/ alongside future LiOS subprojects (e.g. data/). The .github/ stays at root so the CI workflow keeps working; its jobs now run from LiOS-webrtc/.

  • git mv every top-level file/folder into LiOS-webrtc/ (108 pure renames).
  • .github/workflows/ci.yml: set working-directory: LiOS-webrtc for lint and test jobs; pass manifest-path to setup-pixi; update go-build paths (go-version-file and working-directory).
  • New root README.md pointing at LiOS-webrtc/.
  • New minimal root .gitignore for orphan local caches still sitting at root.

Verified locally with ruff (clean), py_compile across key sources/examples, and load_env() correctly resolving to LiOS-webrtc/.env in the new layout.

Summary

Changes

Checklist

  • pixi run ruff check src tests passes
  • pixi run pytest passes (and pixi run pytest -m gpu if GPU code changed)
  • cd signal-server && go build -o webrtcssvr . builds (if Go code changed)
  • Docs updated where relevant (README.md / README.zh-CN.md / design.md / docs/)
  • Commit messages follow Conventional Commits

Summary by CodeRabbit

  • Documentation

    • Added a comprehensive LiOS-webrtc README with quick start, configuration, benchmarks, and docs links.
    • Simplified the project root README to a concise landing page linking to subprojects.
  • Chores

    • Streamlined repository ignore rules at the root and added/updated project-specific ignore entries for LiOS-webrtc.
  • Chores / CI

    • Updated CI defaults so workflows run from the LiOS-webrtc subtree and aligned build/test paths.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Jun 1, 2026

Review Change Stack

Warning

Review limit reached

@DanielMao1, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 7 minutes and 47 seconds. Learn how PR review limits work.

Your organization has run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Free

Run ID: 72c36981-fbb7-4682-80a1-0fb176789bee

📥 Commits

Reviewing files that changed from the base of the PR and between 6cfb2d0 and 0007b4f.

⛔ Files ignored due to path filters (8)
  • lios-webrtc/benchmark/livekit/lk_rust/Cargo.lock is excluded by !**/*.lock
  • lios-webrtc/docs/gst-report/arch_imgtx.png is excluded by !**/*.png
  • lios-webrtc/docs/gst-report/latency_compare.png is excluded by !**/*.png
  • lios-webrtc/docs/gst-report/throughput_jitter_violin.png is excluded by !**/*.png
  • lios-webrtc/docs/gst-report/throughput_samecontent.png is excluded by !**/*.png
  • lios-webrtc/logo/LiOS_logo.png is excluded by !**/*.png
  • lios-webrtc/pixi.lock is excluded by !**/*.lock
  • lios-webrtc/signal-server/go.sum is excluded by !**/*.sum
📒 Files selected for processing (105)
  • .github/workflows/ci.yml
  • .gitignore
  • README.md
  • lios-webrtc/.env.example
  • lios-webrtc/.gitignore
  • lios-webrtc/AGENTS.md
  • lios-webrtc/CHANGELOG.md
  • lios-webrtc/CLAUDE.md
  • lios-webrtc/CODE_OF_CONDUCT.md
  • lios-webrtc/CONTRIBUTING.md
  • lios-webrtc/LICENSE
  • lios-webrtc/README.md
  • lios-webrtc/README.zh-CN.md
  • lios-webrtc/SECURITY.md
  • lios-webrtc/USER_GUIDE.md
  • lios-webrtc/USER_GUIDE.zh-CN.md
  • lios-webrtc/benchmark/README.md
  • lios-webrtc/benchmark/cross_p2p_latency_bidir.sh
  • lios-webrtc/benchmark/cross_p2p_sweep.sh
  • lios-webrtc/benchmark/livekit/cloud_pub.sh
  • lios-webrtc/benchmark/livekit/common.py
  • lios-webrtc/benchmark/livekit/cross_lk_latency_bidir.sh
  • lios-webrtc/benchmark/livekit/livekit_publisher.py
  • lios-webrtc/benchmark/livekit/livekit_receiver_ts.py
  • lios-webrtc/benchmark/livekit/livekit_sender_ts.py
  • lios-webrtc/benchmark/livekit/livekit_subscriber.py
  • lios-webrtc/benchmark/livekit/lk_rust/Cargo.toml
  • lios-webrtc/benchmark/livekit/lk_rust/src/main.rs
  • lios-webrtc/benchmark/livekit/remote_sub.sh
  • lios-webrtc/benchmark/livekit/run_lat.sh
  • lios-webrtc/benchmark/livekit/run_rust_throughput.sh
  • lios-webrtc/benchmark/livekit_config_sshtunnel.yaml
  • lios-webrtc/benchmark/make_figures.py
  • lios-webrtc/benchmark/relat_repeat.sh
  • lios-webrtc/benchmark/rtp_latency/rtp_latency_receiver.py
  • lios-webrtc/benchmark/rtp_latency/rtp_latency_sender.py
  • lios-webrtc/benchmark/throughput/common.py
  • lios-webrtc/benchmark/throughput/gen_clip.py
  • lios-webrtc/benchmark/throughput/gst_receiver.py
  • lios-webrtc/benchmark/throughput/gst_receiver_appsink.py
  • lios-webrtc/benchmark/throughput/gst_sender.py
  • lios-webrtc/benchmark/throughput/gst_sender_clip.py
  • lios-webrtc/benchmark/throughput/sweep_gst.sh
  • lios-webrtc/benchmark/two_camera_receiver_inferbuf_1fps_ts.py
  • lios-webrtc/benchmark/two_camera_sender_1fps_ts.py
  • lios-webrtc/cliff.toml
  • lios-webrtc/design.md
  • lios-webrtc/dockerfiles/Dockerfile
  • lios-webrtc/dockerfiles/tsinghua-apt-noble
  • lios-webrtc/docs/design/RESTORE_DESIGN.md
  • lios-webrtc/docs/design/gpu-sink.md
  • lios-webrtc/docs/usage/gpu-sink.md
  • lios-webrtc/docs/usage/inference_buffer_v2.md
  • lios-webrtc/examples/two_cemera_receiver_inferbuf.py
  • lios-webrtc/examples/two_cemera_sender.py
  • lios-webrtc/justfile
  • lios-webrtc/pixi.toml
  • lios-webrtc/pyproject.toml
  • lios-webrtc/signal-server/LICENSE
  • lios-webrtc/signal-server/cmd/root.go
  • lios-webrtc/signal-server/cmd/serve.go
  • lios-webrtc/signal-server/go.mod
  • lios-webrtc/signal-server/main.go
  • lios-webrtc/signal-server/server/server.go
  • lios-webrtc/src/gst_webrtc/__init__.py
  • lios-webrtc/src/gst_webrtc/gpu_sink/__init__.py
  • lios-webrtc/src/gst_webrtc/gpu_sink/core.py
  • lios-webrtc/src/gst_webrtc/inference_buffer_v2.py
  • lios-webrtc/src/gst_webrtc/receiver/DESIGN.md
  • lios-webrtc/src/gst_webrtc/receiver/__init__.py
  • lios-webrtc/src/gst_webrtc/receiver/core.py
  • lios-webrtc/src/gst_webrtc/sender/RECONNECT_DESIGN.md
  • lios-webrtc/src/gst_webrtc/sender/__init__.py
  • lios-webrtc/src/gst_webrtc/sender/core.py
  • lios-webrtc/src/gst_webrtc/services/__init__.py
  • lios-webrtc/src/gst_webrtc/services/flask_api.py
  • lios-webrtc/src/gst_webrtc/services/server_suite.py
  • lios-webrtc/src/gst_webrtc/services/ws_json_api.py
  • lios-webrtc/src/gst_webrtc/services/ws_json_client.py
  • lios-webrtc/src/gst_webrtc/ws_signal/__init__.py
  • lios-webrtc/src/gst_webrtc/ws_signal/signal_client.py
  • lios-webrtc/tests/_fakes.py
  • lios-webrtc/tests/e2e/.gitignore
  • lios-webrtc/tests/e2e/README.md
  • lios-webrtc/tests/e2e/appsink_msid_e2e.py
  • lios-webrtc/tests/e2e/gpu_sink.sh
  • lios-webrtc/tests/e2e/gpu_sink_save.py
  • lios-webrtc/tests/e2e/inference_buffer_v2_ipc.py
  • lios-webrtc/tests/e2e/ipc_two_procs/reader.py
  • lios-webrtc/tests/e2e/ipc_two_procs/run.sh
  • lios-webrtc/tests/e2e/ipc_two_procs/writer.py
  • lios-webrtc/tests/e2e/ipc_two_procs_flask/README.md
  • lios-webrtc/tests/e2e/ipc_two_procs_flask/reader.py
  • lios-webrtc/tests/e2e/ipc_two_procs_flask/run.sh
  • lios-webrtc/tests/e2e/ipc_two_procs_flask/writer.py
  • lios-webrtc/tests/e2e/receiver.py
  • lios-webrtc/tests/e2e/receiver_msid_save.py
  • lios-webrtc/tests/e2e/sender.py
  • lios-webrtc/tests/e2e/sender_sw.py
  • lios-webrtc/tests/e2e/smoke.sh
  • lios-webrtc/tests/e2e/ws_json_e2e.py
  • lios-webrtc/tests/test_gpu_sink.py
  • lios-webrtc/tests/test_inference_buffer_v2.py
  • lios-webrtc/tests/test_receiver_logic.py
  • lios-webrtc/tests/test_sender_logic.py
📝 Walkthrough

Walkthrough

Root README and .gitignore are simplified; LiOS-webrtc/ receives a comprehensive .gitignore and a full README; CI workflow jobs and Go build settings are updated to run from LiOS-webrtc and use its pixi/go paths.

Changes

Repository restructuring into modular subproject layout

Layer / File(s) Summary
Root project restructuring
README.md, .gitignore
Root README.md replaced with a short landing page pointing to subprojects; root .gitignore simplified to root-level ignores (.pixi/, Python caches, editor/OS artifacts), removing prior repo-wide patterns.
LiOS-webrtc project configuration
LiOS-webrtc/.gitignore
New subproject .gitignore listing environment/tooling files, caches/checkpoints, generated outputs, WandB/Serene data, Rust target/, benchmark artifacts, certificate files, .spec-workflow/ state, and specific signal-server/ subpaths.
LiOS-webrtc project documentation
LiOS-webrtc/README.md
Adds a full README covering LiOS purpose, GPU-accelerated architecture overview, quick start (pixi, server/sender/receiver), benchmarks (latency/throughput/jitter), repository layout, documentation index, and a BibTeX citation.
CI adjustments to use subproject paths
.github/workflows/ci.yml
Set defaults.run.working-directory for lint and unit tests (CPU) to LiOS-webrtc; update setup-pixi manifest-path to LiOS-webrtc/pixi.toml; run Go build from LiOS-webrtc/signal-server using its go.mod for go-version-file.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 I hopped through files with nimble paws,
A tiny README changed its laws,
Subproject grows with guides and rules,
CI now runs inside smaller tools,
Hooray — a tidy nest for smarter crawls!


Note

🎁 Summarized by CodeRabbit Free

Your organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login.

Comment @coderabbitai help to get the list of available commands and usage tips.

@DanielMao1 DanielMao1 force-pushed the restructure branch 2 times, most recently from 255f04c to 6cfb2d0 Compare June 1, 2026 03:31
Restructure the repo so this codebase lives under lios-webrtc/ alongside
future LiOS subprojects (e.g. data/). The .github/ stays at root so the
CI workflow keeps working; its jobs now run from lios-webrtc/.

- git mv every top-level file/folder into lios-webrtc/ (108 pure renames).
- .github/workflows/ci.yml: set working-directory: lios-webrtc for lint
  and test jobs; pass manifest-path to setup-pixi; update go-build paths
  (go-version-file and working-directory).
- New root README.md pointing at lios-webrtc/.
- New minimal root .gitignore for orphan local caches still sitting at root.

Verified locally with ruff (clean), py_compile across key sources/examples,
and load_env() correctly resolving to lios-webrtc/.env in the new layout.
@DanielMao1 DanielMao1 merged commit a4d57e4 into main Jun 1, 2026
4 checks passed
@DanielMao1 DanielMao1 deleted the restructure branch June 1, 2026 04:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant