AutonomousVehicleControlBeginnersGuide
关于自动驾驶车辆控制算法的 Python 示例代码与文档。本项目可作为技术指南书,供初学者学习这些算法与软件架构。
AI 翻译
尚未检测到更新。GitHub 发布版本后会显示在这里。
制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Turns an organisation's codebase into a knowledge graph, lets managers build learning paths and GitHub-tracked tasks from it, gives new joiners a 3-pane learning workspace, and produces weekly and final onboarding reports.
Built from Onboarding_Platform_Feature_List.xlsx. This is a v0 for the team to clone and extend. See Known gaps.
Requires Node 20+ (tested on 24). No Docker or database server needed (SQLite for dev).
git clone <repo-url> && cd brainwhite
cp .env.example .env # Windows PowerShell: Copy-Item .env.example .env
npm install
npm run setup # creates the DB, seeds a demo org, analyses this repo as the sample codebase
npm run dev # http://localhost:3000
Demo logins (password demo12345): [email protected], [email protected], [email protected], [email protected].
Emails are not sent in dev: they are printed in the server console and stored in the EmailLog table (open invite links from there).
| Area | Status |
|---|---|
| Orgs, email/password auth, RBAC (Owner/Manager/Mentor/Candidate), invites, audit log, encrypted GitHub tokens | Done |
| Candidate GitHub connect (mandatory gate). OAuth if keys set, dev form otherwise | Done |
| Codebase analyser: GitHub tarball or local folder, filtering, secret redaction, Tree-sitter parsing (JS/TS/Python/Java), modules, dependency graph, stable chunk ids, summaries (LLM or heuristic) | Done |
| Path builder, content blocks, handouts (25 MB, private), publish, assign + invite email | Done |
| 3-pane workspace, retrieval-based chat with citations, notes, progress + active-time tracking | Done |
| Tasks, GitHub issue creation/link, webhook receiver, auto status, PR quality scoring, conflicts, blockers, manual review | Done |
| Deadline reminders, weekly + final reports, grounded narratives, dashboards, risk flags, mentor rubric | Done |
See .env.example. With no keys everything runs: summaries are heuristic, chat is search-based, GitHub login uses a dev form, and GitHub events come from the simulator. Adding GEMINI_API_KEY (free at Google AI Studio) and/or GROQ_API_KEY (free at Groq Console) unlocks AI code summaries, interactive candidate learning chat with citations, manager narrative reports, and the public "Chat with BrainWhite" widget with automatic workload balancing.
Real GitHub webhooks: point a repo/GitHub App webhook at /api/github/webhook (JSON), set GITHUB_WEBHOOK_SECRET, subscribe to push, pull_request, pull_request_review, check_run, issues. Candidates are matched by their linked GitHub username; only linked candidates in connected repos are recorded.
src/lib/analyser/ ingestion, filtering, parsing, chunking, summaries, pipeline
src/lib/domain/ assignments, retrieval, GitHub events, PR scoring, metrics, reports, jobs
src/app/ pages + server actions per area (codebase, paths, learn, tasks, people, reports)
src/instrumentation.ts in-process scheduler (every 15 min)
prisma/schema.prisma data model
scripts/seed.ts demo data
Useful: npm run typecheck, npm run build, npx prisma studio.
Deliberately left for the team (roughly in priority order):
src/lib/domain/retrieve.ts). Keep the Snippet shape and swap the internals (pgvector/Qdrant + rerank).GITHUB_TOKEN works as a stopgap). Incremental sync from push webhooks and scheduled full re-sync are not wired: use Sync now.void syncRepository, 15-min timer). A restart mid-sync leaves a repo stuck on RUNNING. Move to BullMQ/Temporal.src/lib/mailer.ts), password reset, email verification, Google SSO, refresh-token style sessions (currently 7-day DB sessions).prisma/schema.prisma).Org-scoped queries throughout; handouts are served only through an authenticated route; secrets are redacted before storage and LLM calls; GitHub tokens are AES-256-GCM encrypted; webhook signatures are verified. Before any real deployment: set a fresh ENCRYPTION_KEY, set GITHUB_WEBHOOK_SECRET, disable ALLOW_LOCAL_REPOS, delete the demo accounts, and review rate limiting (not implemented).