Files
vdm/CMakePresets.json
T
samiandClaude Opus 5 8bb683b09d scaffold: project structure, wire contract, roadmap and agent briefs
Lays out Velox Download Manager (IDM-class download manager for Ubuntu
26.04) as a monorepo ready for parallel lane development. No implementation
code by design.

- docs/: architecture, roadmap M0-M7, IDM-parity GUI spec, engine design,
  Firefox extension spec, risks/spikes, packaging
- contracts/: wire-contract skeleton (JSON Schema + fixture templates) —
  the single synchronization point between lanes
- docs/agents/: one brief per lane (PROTO, CORE, DAEMON, GUI, EXT, PKG/QA)
  with owned directories, build order and definition of done
- CLAUDE.md: rules of engagement — lane ownership, layering, non-negotiables
- CMake scaffolding with dev/tsan/release/ci presets

Two environment findings shape the design: Firefox here is the Mozilla snap
(native-messaging risk, so the extension carries a loopback-WebSocket
fallback), and Wayland forbids passive clipboard monitoring (so clipboard
capture is explicit-action-first).

Co-Authored-By: Claude Opus 5 <[email protected]>
2026-09-09 18:21:11 +04:00

64 lines
1.8 KiB
JSON

{
"version": 6,
"cmakeMinimumRequired": { "major": 3, "minor": 28, "patch": 0 },
"configurePresets": [
{
"name": "base",
"hidden": true,
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": { "CMAKE_EXPORT_COMPILE_COMMANDS": "ON" }
},
{
"name": "dev",
"inherits": "base",
"displayName": "Debug + ASan/UBSan (default for all lanes)",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug",
"CMAKE_CXX_FLAGS": "-fsanitize=address,undefined -fno-omit-frame-pointer -g",
"VELOX_BUILD_TESTS": "ON"
}
},
{
"name": "tsan",
"inherits": "base",
"displayName": "Debug + ThreadSanitizer (required for CORE and DAEMON)",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug",
"CMAKE_CXX_FLAGS": "-fsanitize=thread -fno-omit-frame-pointer -g",
"VELOX_BUILD_TESTS": "ON"
}
},
{
"name": "release",
"inherits": "base",
"displayName": "RelWithDebInfo + LTO (benchmarks and packages)",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "RelWithDebInfo",
"CMAKE_INTERPROCEDURAL_OPTIMIZATION": "ON",
"VELOX_BUILD_TESTS": "OFF"
}
},
{
"name": "ci",
"inherits": "dev",
"displayName": "CI build",
"cacheVariables": { "VELOX_BUILD_FUZZ": "ON" }
}
],
"buildPresets": [
{ "name": "dev", "configurePreset": "dev" },
{ "name": "tsan", "configurePreset": "tsan" },
{ "name": "release", "configurePreset": "release" },
{ "name": "ci", "configurePreset": "ci" }
],
"testPresets": [
{
"name": "dev",
"configurePreset": "dev",
"output": { "outputOnFailure": true },
"execution": { "noTestsAction": "error", "stopOnFailure": false }
}
]
}