docs: add build/manual-testing guide, fix stale M0 stub claims in headers

- docs/building.md: explains what each CMake preset (dev, m1-dev, m2-dev,
  server-release) is actually for, and how to build voicecat-server + vccli
  for manual testing. Linked from CLAUDE.md's doc index.
- core/include/voicecat.h, core/src/voicecat.cpp, core/src/protocol/protocol.h,
  server/src/main.cpp: doc-header comments still claimed M0-skeleton/stub
  behavior (VC_ERR_NOT_IMPLEMENTED everywhere, "prints what it would do",
  protobuf codegen "commented") that M1-M3 made real. Updated to describe
  current behavior, with the dev-preset stub fallback noted explicitly where
  it still applies.
This commit is contained in:
2026-06-16 16:30:07 +02:00
parent 5f6c223526
commit 845f995826
6 changed files with 176 additions and 11 deletions

View File

@@ -8,8 +8,13 @@
* Design: docs/architecture.md §4. Everything here is async + event-driven — calls return
* immediately and results/state changes arrive via the vc_callbacks.on_event callback.
*
* STATUS: M0 skeleton. Implementations live in core/src and currently return
* VC_ERR_NOT_IMPLEMENTED. The shapes below are the contract to build against.
* STATUS: real, behind VOICECAT_HAS_NET (the `m1-dev`/`server-release` presets — vcpkg deps
* on; see docs/building.md). As of M3, control plane, voice, multi-stream, device
* enumeration, VAD/PTT, and stereo playback all work for real via core/src/core/client.cpp.
* The no-deps `dev` preset still links a stub vc_client that returns VC_ERR_NOT_IMPLEMENTED
* for everything below `connect`, purely to keep that skeleton build green. webrtc AEC/NS/AGC
* remains an inert passthrough regardless of preset (no Windows/MSVC port upstream —
* docs/voice.md §8/§11, PROGRESS.md).
*/
#ifndef VOICECAT_H
#define VOICECAT_H