chore: docs guides
This commit is contained in:
parent
2f76728481
commit
868c6e04fa
@ -345,7 +345,7 @@ Option A: Learning profiles with recency bias
|
|||||||
<li><strong>Automatic</strong>: Each task completion generates execution record</li>
|
<li><strong>Automatic</strong>: Each task completion generates execution record</li>
|
||||||
<li><strong>Learning</strong>: If decision had trade-offs, extract as ADR candidate</li>
|
<li><strong>Learning</strong>: If decision had trade-offs, extract as ADR candidate</li>
|
||||||
<li><strong>Curation</strong>: ProjectManager/Architect reviews and approves</li>
|
<li><strong>Curation</strong>: ProjectManager/Architect reviews and approves</li>
|
||||||
<li><strong>Archival</strong>: Stored in docs/architecture/adr/ (numbered, immutable)</li>
|
<li><strong>Archival</strong>: Stored in docs/adrs/ (numbered, immutable)</li>
|
||||||
</ol>
|
</ol>
|
||||||
<hr />
|
<hr />
|
||||||
<h2 id="-documentation-synchronization"><a class="header" href="#-documentation-synchronization">📚 Documentation Synchronization</a></h2>
|
<h2 id="-documentation-synchronization"><a class="header" href="#-documentation-synchronization">📚 Documentation Synchronization</a></h2>
|
||||||
|
|||||||
@ -203,7 +203,7 @@ Option A: Learning profiles with recency bias
|
|||||||
1. **Automatic**: Each task completion generates execution record
|
1. **Automatic**: Each task completion generates execution record
|
||||||
2. **Learning**: If decision had trade-offs, extract as ADR candidate
|
2. **Learning**: If decision had trade-offs, extract as ADR candidate
|
||||||
3. **Curation**: ProjectManager/Architect reviews and approves
|
3. **Curation**: ProjectManager/Architect reviews and approves
|
||||||
4. **Archival**: Stored in docs/architecture/adr/ (numbered, immutable)
|
4. **Archival**: Stored in docs/adrs/ (numbered, immutable)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@ -527,7 +527,7 @@ cargo run --example production_setup
|
|||||||
|
|
||||||
## Referencias
|
## Referencias
|
||||||
|
|
||||||
- **ADR**: `docs/architecture/decisions/008-recursive-language-models-integration.md`
|
- **ADR**: `docs/adrs/0029-rlm-recursive-language-models.md`
|
||||||
- **Production Guide**: `crates/vapora-rlm/PRODUCTION.md`
|
- **Production Guide**: `crates/vapora-rlm/PRODUCTION.md`
|
||||||
- **API Docs**: `cargo doc --open -p vapora-rlm`
|
- **API Docs**: `cargo doc --open -p vapora-rlm`
|
||||||
- **Tests**: `crates/vapora-rlm/tests/`
|
- **Tests**: `crates/vapora-rlm/tests/`
|
||||||
|
|||||||
@ -3,7 +3,6 @@
|
|||||||
# ║ Targets, cross-compilation, and distribution ║
|
# ║ Targets, cross-compilation, and distribution ║
|
||||||
# ╚══════════════════════════════════════════════════════════════════════╝
|
# ╚══════════════════════════════════════════════════════════════════════╝
|
||||||
|
|
||||||
# Help for distro module
|
|
||||||
distro-help:
|
distro-help:
|
||||||
@echo "DISTRIBUTION & TARGET MODULE"
|
@echo "DISTRIBUTION & TARGET MODULE"
|
||||||
@echo ""
|
@echo ""
|
||||||
@ -17,18 +16,20 @@ distro-help:
|
|||||||
@echo " just distro::build-all-targets Build for all installed targets"
|
@echo " just distro::build-all-targets Build for all installed targets"
|
||||||
@echo ""
|
@echo ""
|
||||||
@echo "Installation:"
|
@echo "Installation:"
|
||||||
@echo " just distro::install Install binaries to ~/.local/bin"
|
@echo " just distro::install Install server binaries to ~/.local/bin"
|
||||||
@echo " just distro::install DIR=/path Install to custom directory"
|
@echo " just distro::install DIR=/path Install to custom directory"
|
||||||
|
@echo " just distro::install UI=true Also build frontend (trunk --release)"
|
||||||
|
@echo ""
|
||||||
|
@echo " Binaries installed: vapora-backend, vapora-agents, vapora-mcp-server,"
|
||||||
|
@echo " vapora-a2a, vapora (CLI)"
|
||||||
@echo ""
|
@echo ""
|
||||||
@echo "Utilities:"
|
@echo "Utilities:"
|
||||||
@echo " just distro::clean-targets Clean target build artifacts"
|
@echo " just distro::clean-targets Clean target build artifacts"
|
||||||
|
|
||||||
# Workspace root directory - justfile_directory() returns vapora directory when called from module
|
|
||||||
WORKSPACE_ROOT := justfile_directory()
|
WORKSPACE_ROOT := justfile_directory()
|
||||||
|
|
||||||
# === TARGETS ===
|
# === TARGETS ===
|
||||||
|
|
||||||
# List all installed Rust targets
|
|
||||||
[doc("List installed Rust targets")]
|
[doc("List installed Rust targets")]
|
||||||
list-targets:
|
list-targets:
|
||||||
@echo "=== Installed Rust Targets ==="
|
@echo "=== Installed Rust Targets ==="
|
||||||
@ -40,9 +41,9 @@ list-targets:
|
|||||||
@echo " aarch64-apple-darwin macOS ARM64 (Apple Silicon)"
|
@echo " aarch64-apple-darwin macOS ARM64 (Apple Silicon)"
|
||||||
@echo " aarch64-unknown-linux-gnu Linux ARM64"
|
@echo " aarch64-unknown-linux-gnu Linux ARM64"
|
||||||
@echo " x86_64-pc-windows-gnu Windows x86_64"
|
@echo " x86_64-pc-windows-gnu Windows x86_64"
|
||||||
|
@echo " wasm32-unknown-unknown WebAssembly (frontend)"
|
||||||
|
|
||||||
# Install common cross-compilation targets
|
[doc("Install common cross-compile targets including wasm32")]
|
||||||
[doc("Install common cross-compile targets")]
|
|
||||||
install-targets:
|
install-targets:
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -e
|
set -e
|
||||||
@ -53,14 +54,18 @@ install-targets:
|
|||||||
"aarch64-apple-darwin"
|
"aarch64-apple-darwin"
|
||||||
"aarch64-unknown-linux-gnu"
|
"aarch64-unknown-linux-gnu"
|
||||||
"x86_64-pc-windows-gnu"
|
"x86_64-pc-windows-gnu"
|
||||||
|
"wasm32-unknown-unknown"
|
||||||
)
|
)
|
||||||
for target in "${TARGETS[@]}"; do
|
for target in "${TARGETS[@]}"; do
|
||||||
|
if rustup target list --installed | grep -q "$target"; then
|
||||||
|
echo " ✓ $target (already installed)"
|
||||||
|
else
|
||||||
echo " Installing $target..."
|
echo " Installing $target..."
|
||||||
rustup target add "$target" || echo " ⊘ $target (already installed)"
|
rustup target add "$target"
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
echo "✓ Targets installed"
|
echo "✓ Targets installed"
|
||||||
|
|
||||||
# Install specific Rust target
|
|
||||||
[doc("Install specific Rust target")]
|
[doc("Install specific Rust target")]
|
||||||
install-target TARGET:
|
install-target TARGET:
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
@ -71,7 +76,6 @@ install-target TARGET:
|
|||||||
|
|
||||||
# === BUILD ===
|
# === BUILD ===
|
||||||
|
|
||||||
# Build for specific target
|
|
||||||
[doc("Build for specific target")]
|
[doc("Build for specific target")]
|
||||||
build-target TARGET:
|
build-target TARGET:
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
@ -81,14 +85,13 @@ build-target TARGET:
|
|||||||
cargo build --release --target "{{TARGET}}" --workspace
|
cargo build --release --target "{{TARGET}}" --workspace
|
||||||
echo "✓ Build complete for {{TARGET}}"
|
echo "✓ Build complete for {{TARGET}}"
|
||||||
|
|
||||||
# Build for all installed targets
|
[doc("Build for all installed targets (excludes wasm32 — use frontend-build-release for that)")]
|
||||||
[doc("Build for all installed targets")]
|
|
||||||
build-all-targets:
|
build-all-targets:
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -e
|
set -e
|
||||||
echo "=== Building for all targets ==="
|
echo "=== Building for all native targets ==="
|
||||||
cd "{{ WORKSPACE_ROOT }}"
|
cd "{{ WORKSPACE_ROOT }}"
|
||||||
TARGETS=$(rustup target list | grep installed | awk '{print $1}')
|
TARGETS=$(rustup target list --installed | grep -v wasm32)
|
||||||
for target in $TARGETS; do
|
for target in $TARGETS; do
|
||||||
echo ""
|
echo ""
|
||||||
echo "Building for $target..."
|
echo "Building for $target..."
|
||||||
@ -99,21 +102,27 @@ build-all-targets:
|
|||||||
echo "✓ $target complete"
|
echo "✓ $target complete"
|
||||||
done
|
done
|
||||||
echo ""
|
echo ""
|
||||||
echo "✓ All target builds complete"
|
echo "✓ All native target builds complete"
|
||||||
|
|
||||||
# === INSTALLATION ===
|
# === INSTALLATION ===
|
||||||
|
|
||||||
# Build and install release binaries (default: ~/.local/bin)
|
# Build and install all release binaries.
|
||||||
[doc("Build and install binaries (default: ~/.local/bin or DIR=<path>)")]
|
#
|
||||||
install DIR="":
|
# Usage:
|
||||||
|
# just distro::install → ~/.local/bin, native only
|
||||||
|
# just distro::install DIR=/usr/local/bin → custom dir, native only
|
||||||
|
# just distro::install UI=true → ~/.local/bin + trunk --release
|
||||||
|
# just distro::install DIR=/opt UI=true → custom dir + trunk --release
|
||||||
|
#
|
||||||
|
# Binaries: vapora-backend, vapora-agents, vapora-mcp-server, vapora-a2a, vapora (CLI)
|
||||||
|
[doc("Build and install server binaries (DIR=path, UI=true for frontend)")]
|
||||||
|
install DIR="" UI="false":
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
# Normalize workspace path using shell
|
|
||||||
WORKSPACE="{{ WORKSPACE_ROOT }}"
|
WORKSPACE="{{ WORKSPACE_ROOT }}"
|
||||||
WORKSPACE="$(cd "$WORKSPACE" && pwd)" || { echo "✗ Failed to access workspace"; exit 1; }
|
WORKSPACE="$(cd "$WORKSPACE" && pwd)" || { echo "✗ Failed to access workspace"; exit 1; }
|
||||||
|
|
||||||
# Resolve install directory
|
|
||||||
if [ -z "{{ DIR }}" ]; then
|
if [ -z "{{ DIR }}" ]; then
|
||||||
INSTALL_DIR="$HOME/.local/bin"
|
INSTALL_DIR="$HOME/.local/bin"
|
||||||
else
|
else
|
||||||
@ -121,77 +130,99 @@ install DIR="":
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
echo "=== Building and Installing VAPORA binaries ==="
|
echo "=== Building and Installing VAPORA binaries ==="
|
||||||
echo "Build workspace: $WORKSPACE"
|
echo "Workspace: $WORKSPACE"
|
||||||
echo "Install directory: $INSTALL_DIR"
|
echo "Install directory: $INSTALL_DIR"
|
||||||
|
echo "Frontend (UI): {{ UI }}"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# First, build release binaries
|
# Build all server binaries in one pass (Cargo deduplicates shared deps)
|
||||||
echo "📦 Building release binaries..."
|
echo "Building release binaries..."
|
||||||
cd "$WORKSPACE" || exit 1
|
cd "$WORKSPACE"
|
||||||
cargo build --release -p vapora-backend -p vapora-agents --quiet
|
cargo build --release \
|
||||||
echo "✓ Build complete"
|
-p vapora-backend \
|
||||||
|
-p vapora-agents \
|
||||||
|
-p vapora-mcp-server \
|
||||||
|
-p vapora-a2a \
|
||||||
|
-p vapora-cli \
|
||||||
|
--quiet
|
||||||
|
echo "✓ Native binaries built"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# Create installation directory
|
# Optionally build the Leptos frontend via trunk
|
||||||
mkdir -p "$INSTALL_DIR" || { echo "✗ Failed to create directory"; exit 1; }
|
if [ "{{ UI }}" = "true" ]; then
|
||||||
echo "Installing binaries to $INSTALL_DIR..."
|
if ! command -v trunk &>/dev/null; then
|
||||||
|
echo "✗ trunk not found. Install with: cargo install trunk"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "Building frontend (trunk --release)..."
|
||||||
|
cd "$WORKSPACE/crates/vapora-frontend"
|
||||||
|
trunk build --release
|
||||||
|
echo "✓ Frontend built → $WORKSPACE/crates/vapora-frontend/dist"
|
||||||
|
cd "$WORKSPACE"
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
|
|
||||||
# Track installations
|
# Copy binaries to install dir
|
||||||
INSTALLED=0
|
mkdir -p "$INSTALL_DIR" || { echo "✗ Failed to create $INSTALL_DIR"; exit 1; }
|
||||||
|
echo "Installing to $INSTALL_DIR..."
|
||||||
|
|
||||||
# Define all binaries to install
|
|
||||||
declare -a BINARIES=(
|
declare -a BINARIES=(
|
||||||
"vapora-backend"
|
"vapora-backend"
|
||||||
"vapora-agents"
|
"vapora-agents"
|
||||||
"vapora-mcp-server"
|
"vapora-mcp-server"
|
||||||
|
"vapora-a2a"
|
||||||
"vapora"
|
"vapora"
|
||||||
)
|
)
|
||||||
|
|
||||||
# Install each binary
|
INSTALLED=0
|
||||||
|
MISSING=0
|
||||||
for BIN_NAME in "${BINARIES[@]}"; do
|
for BIN_NAME in "${BINARIES[@]}"; do
|
||||||
BIN_PATH="$WORKSPACE/target/release/$BIN_NAME"
|
BIN_PATH="$WORKSPACE/target/release/$BIN_NAME"
|
||||||
|
|
||||||
if [ -f "$BIN_PATH" ]; then
|
if [ -f "$BIN_PATH" ]; then
|
||||||
cp "$BIN_PATH" "$INSTALL_DIR/"
|
cp "$BIN_PATH" "$INSTALL_DIR/"
|
||||||
chmod +x "$INSTALL_DIR/$BIN_NAME"
|
chmod +x "$INSTALL_DIR/$BIN_NAME"
|
||||||
echo " ✓ $BIN_NAME"
|
echo " ✓ $BIN_NAME"
|
||||||
INSTALLED=$((INSTALLED + 1))
|
INSTALLED=$((INSTALLED + 1))
|
||||||
|
else
|
||||||
|
echo " ✗ $BIN_NAME (not found in target/release — build may have failed)"
|
||||||
|
MISSING=$((MISSING + 1))
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Show warning if no binaries found
|
|
||||||
if [ $INSTALLED -eq 0 ]; then
|
|
||||||
echo " ⊘ No binaries found in $WORKSPACE/target/release"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
if [ $INSTALLED -eq 0 ]; then
|
if [ "$INSTALLED" -eq 0 ]; then
|
||||||
echo "✗ No binaries were installed"
|
echo "✗ No binaries were installed"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "✓ Installation complete ($INSTALLED binaries installed)"
|
if [ "$MISSING" -gt 0 ]; then
|
||||||
|
echo "⚠ $MISSING binaries missing — check build output above"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "✓ Installation complete ($INSTALLED/$((INSTALLED + MISSING)) binaries)"
|
||||||
echo ""
|
echo ""
|
||||||
echo "📋 Installation summary:"
|
|
||||||
echo "Install dir: $INSTALL_DIR"
|
echo "Install dir: $INSTALL_DIR"
|
||||||
echo " Binaries: $(ls -1 "$INSTALL_DIR"/vapora-* 2>/dev/null | xargs -I {} basename {})"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
if echo "$INSTALL_DIR" | grep -q "\.local/bin"; then
|
if echo "$INSTALL_DIR" | grep -q "\.local/bin"; then
|
||||||
echo "⚠️ Shell setup required:"
|
echo ""
|
||||||
|
echo "Ensure PATH includes $INSTALL_DIR:"
|
||||||
echo " export PATH=\"\$PATH:$INSTALL_DIR\""
|
echo " export PATH=\"\$PATH:$INSTALL_DIR\""
|
||||||
echo " Or add to ~/.bashrc/.zshrc for persistent setup"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "🧪 Verify installation:"
|
echo "Verify:"
|
||||||
echo " $INSTALL_DIR/vapora-backend --help"
|
echo " $INSTALL_DIR/vapora-backend --help"
|
||||||
echo " $INSTALL_DIR/vapora-agents --help"
|
echo " $INSTALL_DIR/vapora-agents --help"
|
||||||
|
echo " $INSTALL_DIR/vapora-a2a --help"
|
||||||
|
|
||||||
|
if [ "{{ UI }}" = "true" ]; then
|
||||||
|
echo ""
|
||||||
|
echo "Frontend dist: $WORKSPACE/crates/vapora-frontend/dist"
|
||||||
|
fi
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# === UTILITIES ===
|
# === UTILITIES ===
|
||||||
|
|
||||||
# Clean target build artifacts
|
|
||||||
[doc("Clean all target build artifacts")]
|
[doc("Clean all target build artifacts")]
|
||||||
clean-targets:
|
clean-targets:
|
||||||
@echo "=== Cleaning target artifacts ==="
|
@echo "=== Cleaning target artifacts ==="
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user