LOSSLESS HANDOFF — LANE 00 INTEGRATION LAYER
Solutions-Based AI Studio
Date: 2026-04-14
Version: v2 — Updated from Lane 05 session (PT-05-005 complete)
From: Claude thread 00 - Integration Layer (session ending due to context length)
To: New Claude thread 00 - Integration Layer (continuation)

SECTION 1 — WHO YOU ARE

You are Lane 00 — Integration Layer for the Solutions-Based AI Studio.
Your role is the connection point between all workstreams and lanes.
You do NOT own benchmarks, prompts, training data, or infrastructure individually.
You OWN the wiring between them, cross-lane synthesis, master state, and handoff intake.
Tag: Solutions-Based AI — Turn vision into solutions
Owner: Kip Hohman (kipper) — retired spring manufacturer, MCSE, Navy veteran.
Background: Custom spring manufacturing — large actuator springs (2.500 inch bar)
to small Inconel/Monel/Cobalt/Nickel springs for valves and industrial products.
Goal: Build a local AI studio to ingest domain knowledge and produce grounded
engineering answers, quotes, and solutions.

SECTION 2 — HARDWARE

ACTIVE MACHINE: gaming-ai-System
  CPU: AMD Ryzen 9 9950X
  RAM: 64GB DDR5-6000 (DOCP/EXPO active — confirmed this session)
  GPUs: 2x RTX 3090 24GB (48GB total VRAM)
  OS: Ubuntu 24.04
  User: kipper
  IP: 10.0.0.200 (dynamic — static not yet set)
  Tailscale IP: 100.119.173.73 (CORRECTED — was 100.107.111.126)
  NOTE: gaming-ai-System is Ubuntu on second drive of kipper-system hardware.
        kipper-system (100.107.111.126) is the same physical machine, different OS drive.
  Network: 10GbE enp12s0

FUTURE MACHINE: Ai-System
  Platform: TRX40 / RAM: 128GB DDR4 / GPUs: 6x RTX 3090 24GB
  Status: Parts purchased, build pending — Ubuntu install next session

INGESTION FLEET: 12x Xeon rigs
  GPUs: 5x RTX 3060 12GB per rig / Status: Ubuntu not yet installed

NAS: QNAP NAS2991B8
  IP: 10.0.0.100 (static) / Tailscale: 100.81.13.64
  Mount: /mnt/Vault (SMB 3.0)
  Usable: ~31TB / Speed: 10GbE confirmed

SECTION 3 — RUNNING SERVICES (confirmed 2026-04-14)

Open WebUI          http://10.0.0.200:8080      Running
code-server         127.0.0.1:8081              Running (localhost only — intentional security)
text-gen-webui      http://10.0.0.200:7860      Running
text-gen-webui API  http://127.0.0.1:5000/v1    Running (OpenAI-compatible)
PostgreSQL 16       localhost:5432              Running
Claude Code         CLI                         Authenticated (Max subscription)
Docker              172.17.0.1                  Active
vault-http          localhost:8888              Running (systemd service — auto-start)

TAILSCALE NETWORK (confirmed 2026-04-14):
  gaming-ai-System    100.119.173.73   Connected (Ubuntu — active build machine)
  kipper-system       100.107.111.126  Last seen Apr 8 (Windows drive — same hardware)
  nas2991b8           100.81.13.64     Connected (QNAP)
  diskstation         100.125.195.66   Connected
  desktop-hka4q2m     100.93.143.87    Last seen Apr 8

SESSION PERSISTENCE (PT-05-005 COMPLETE):
  vault-http systemd service: running on port 8888, serving /mnt/Vault/00_Overview
  Tailscale Funnel: active background persistent (gaming-ai-System)
  Cloudflare Tunnel: LIVE — ephemeral URL changes on restart
  Current URL: https://roof-tribunal-federal-humidity.trycloudflare.com
  Claude fetch confirmed working: web_fetch → Cloudflare URL → Vault file
  NEXT: Named Cloudflare tunnel for permanent URL (scheduled next session)

FETCH PATTERN FOR NEW THREADS:
  At session start, user pastes current Cloudflare tunnel URL.
  Claude fetches: https://[cloudflare-url]/lane00_lossless_handoff_2026-04-14.md
  Full context loaded autonomously — no copy/paste required.

SECTION 4 — MODEL INVENTORY (gaming-ai-System)

qwen2.5-72b/qwen2.5-72b-instruct-q4_k_m-00001-of-00012.gguf     LOADED (default)
qwen3-32b/Qwen3-32B-Q4_K_M.gguf                                  Available
qwen2.5-32b/qwen2.5-32b-instruct-q4_k_m-00001-of-00005.gguf     Available
qwen2.5-14b/Qwen2.5-14B-Instruct-Q4_K_M.gguf                    Available
qwen2.5-7b/qwen2.5-7b-instruct-q8_0-00001-of-00003.gguf         Available
gemma-4-26b-a4b/google_gemma-4-26B-A4B-it-Q4_K_M.gguf           Available

DUAL-GPU BASELINE: gpu-layers=-1, tensor_split=1,1

SECTION 5 — DATABASE STATE

Engine: PostgreSQL 16 + pgvector 0.6.0
Host: localhost:5432 / DB: ai_studio / User: vault_user / Password: vault_secure_2026
Connection: PGPASSWORD=vault_secure_2026 psql -U vault_user -d ai_studio -h localhost

CHUNKS TABLE: id, document_id, chunk_index, content (text), token_count, embedding vector(384)
INDEX: chunks_embedding_idx — hnsw (embedding vector_cosine_ops) — ACTIVE

DOCUMENTS IN PGVECTOR (691 total chunks):
  ROG Crosshair X870E Hero Manual         360 chunks
  TRX40 PRO 10G Motherboard               305 chunks
  alloy_steels.md                         2 chunks
  copper_alloys.md                        5 chunks
  high_carbon_steels.md                   3 chunks
  nickel_alloys.md                        6 chunks
  spring_materials_index.md               7 chunks
  stainless_steels.md                     3 chunks

EMBEDDING MODEL (locked): sentence-transformers/all-MiniLM-L6-v2 (384 dims)
PIPELINE ORDER: batch → chunk → embed → query
Always prefix Docling: CUDA_VISIBLE_DEVICES=""

SECTION 6 — STUDIO_ROUTER.PY STATE

Location: ~/apps/studio_router.py
Vault: /mnt/Vault/02_AI_Stack/pipelines/scripts/studio_router.py

STATUS: WORKING — confirmed live test passed this session
  Query: What is the maximum operating temperature for Inconel 718?
  Result: Auto-routed 72b, 4 RAG chunks, Answer: 1100 degrees F, Unicode clean, Training candidate YES

CONFIRMED FEATURES:
  ascii_filter() — strips non-ASCII (WL-01 WL-03)
  contains_cyrillic() — WL-02 detection U+0400 to U+04FF
  contains_fullwidth_digit() — WL-03 detection U+FF10 to U+FF19
  unicode_integrity_check() — combined WL-02 + WL-03
  wrap_governance() — governance packet with unicode_result param
  Auto-routing — domain keywords trigger 72b automatically

MODEL_TIER MAP:
  14b: qwen2.5-14b/Qwen2.5-14B-Instruct-Q4_K_M.gguf
  32b: qwen3-32b/Qwen3-32B-Q4_K_M.gguf
  72b: qwen2.5-72b/qwen2.5-72b-instruct-q4_k_m-00001-of-00012.gguf

ROUTING KEYWORDS:
  72B: specification, tolerance, alloy, certification, valve spring, inconel,
       elgiloy, hastelloy, operating temperature, corrosion, compare, tradeoff,
       analyze, multi, constraint, recommend, evaluate, synthesize, design, architecture
  14B: part number, quote, price, lead time, quantity, summarize, rewrite,
       clean, format, list, what is, define, explain briefly
  32B: default

SECTION 7 — LANE STRUCTURE

CLAUDE LANES:
  Lane 00 — Integration Layer (this thread)
  Lane 05 — Infrastructure (separate Claude thread)

CHATGPT LANES:
  Lane 01 — Assistant Design
  Lane 02 — System Prompt Lab
  Lane 03 — Behavior Tests
  Lane 04 — Training Data / LoRA Prep
  Support  — Technical and Operational

LANE PROTOCOL (locked 2026-04-14):
  All cross-lane work requires formal handoff packet
  FROM / TO / DATE / TASK ID / TASK / INPUT / OUTPUT NEEDED / DEPENDENCY / RETURN
  No lane executes out-of-scope work
  All completions report to Lane 00

SECTION 8 — WATCHLIST

WL-01: Chinese character insertion at noun positions
  Examples: plan=计划, cloud=云, platform=平台, time=時間
  Detection: ascii_filter() catches it
  Training: 5 contrast pairs HD-72B-0067 through 0071 WRITTEN

WL-02: Cyrillic substitution in trade names and body text
  Examples: Monел, Incоnel, inсhes
  Detection: contains_cyrillic() U+0400 to U+04FF
  Training: 5 contrast pairs HD-72B-0062 through 0066 WRITTEN
  Test suite: BT-WL02-001 through 007 saved to Vault

WL-03: Fullwidth digit insertion at numeric positions
  Examples: April 11=April １１, 0.625=0.6２５, lot 2026-0412=2026-0４12
  Detection: contains_fullwidth_digit() U+FF10 to U+FF19
  Training: 5 contrast pairs HD-72B-0057 through 0061 WRITTEN
  Test suite: BT-WL03-001 through 007 built by Lane 03

WL-04: Technical fact mutation — MOST DANGEROUS
  Examples: Inconel 718→778, 2.250→2.225 inches, 180→179 lb/in
  Detection: NOT automatable — requires semantic comparison
  Training: 5 contrast pairs HD-72B-0052 through 0056 WRITTEN
  Strategy: PT-03-003 Lane 03 building

SECTION 9 — TRAINING PROGRAM STATE

File: 72b_psr_training_mcr_v1_2026-04-12.jsonl
Target: Qwen 2.5 72B QLoRA fine-tune

  multi_constraint_rewrite:    50/50  LOCKED
  bounded_synthesis:           50/50  LOCKED
  bounded_drafting:            10/50  IN PROGRESS (Lane 04 batch 2 building)
  bounded_decision_support:    0/50   PENDING
  vague_to_clear_heavy:        0/50   PENDING
  Watchlist contrast pairs:    20/20  LOCKED

TOTAL: 110/250 (44%)
Next packet ID: HD-72B-0100 (Lane 04 batch 2)

SECTION 10 — PENDING TASK REGISTER

PT-03-003 | Lane 03 | WL-04 detection strategy proposal          | ACTIVE building
PT-04-006 | Lane 04 | bounded_drafting batch 2 HD-72B-0100-0109  | ACTIVE building
PT-05-003 | Lane 05 | WL-03 + combined unicode_integrity_check    | BLOCKED awaiting packet
PT-04-007 | Lane 04 | bounded_decision_support 50 examples        | PENDING
PT-04-008 | Lane 04 | vague_to_clear_heavy 50 examples            | PENDING
PT-00-003 | Lane 00 | JSONL generation 110 candidates             | PENDING
PT-00-005 | Lane 00 | studio_master_state.md write to Vault       | PENDING
PT-00-006 | Lane 00 | pending_tasks.md write to Vault             | PENDING
PT-05-006 | Lane 05 | Named Cloudflare tunnel — permanent URL     | PENDING
PT-05-007 | Lane 05 | vault_ledger.json + write/confirm/sync      | PENDING

COMPLETED THIS CYCLE:
PT-05-001 | Lane 05 | Input folder purge handler                  | COMPLETE
PT-05-002 | Lane 05 | WL-02 Cyrillic detection wired              | COMPLETE
PT-05-005 | Lane 05 | Tailscale HTTP server port 8888             | COMPLETE

CANCELLED:
PT-05-004 | Google Drive sync — security concern — replaced by PT-05-005

SECTION 11 — SESSION PERSISTENCE (UPDATED — NOW LIVE)

Architecture:
  /mnt/Vault/00_Overview/ served via vault-http systemd service (port 8888)
  Tailscale Funnel: persistent background service on gaming-ai-System
  Cloudflare Tunnel: active — provides public HTTPS access for Claude web_fetch

STATUS: LIVE — confirmed working 2026-04-14
  Claude fetched lane05_handoff_2026-04-14.md successfully via Cloudflare URL
  Full session context loaded autonomously — no copy/paste required

CURRENT CLOUDFLARE URL (ephemeral — changes on cloudflared restart):
  https://roof-tribunal-federal-humidity.trycloudflare.com

NEW THREAD STARTUP PROCEDURE:
  1. Confirm cloudflared is running on gaming-ai-System
  2. Get current Cloudflare URL (check terminal or restart cloudflared)
  3. Paste URL into new Claude thread
  4. Claude fetches: https://[url]/lane00_lossless_handoff_2026-04-14.md
  5. Full context loaded — work begins immediately

PERMANENT URL — NEXT SESSION:
  PT-05-006: Named Cloudflare tunnel
  Once complete: fixed URL, no restart needed, paste once and never again

SECTION 12 — VAULT VERSIONING SYSTEM (DESIGNED — NOT YET BUILT)

Architecture designed in Lane 05 session 2026-04-14:
  vault_ledger.json — tracks every handoff version, state, timestamp
  Version states: RECORDED / PENDING / MISSING / CURRENT
  Naming: lane00_handoff_v0001.md, v0002.md etc.
  Three write moments per thread: open / mid / close
  Sync script: reads ledger, merges PENDING → RECORDED, updates ledger
  Rule: new thread only loads RECORDED versions — never PENDING

Build task: PT-05-007 — scheduled next Lane 05 session

SECTION 13 — LOCKED DECISIONS

1.  NAS: SMB 3.0 / /mnt/Vault canonical
2.  Vault credentials: /etc/vault-credentials chmod 600
3.  GPU 0 reserved: CUDA_VISIBLE_DEVICES="" for Docling
4.  Embedding: all-MiniLM-L6-v2 384 dims locked
5.  DB: ai_studio/vault_user/vault_secure_2026/localhost:5432
6.  API: http://127.0.0.1:5000/v1 OpenAI-compatible
7.  code-server: 127.0.0.1:8081 localhost only security design
8.  input/ = canonical drop zone
9.  Pipeline: batch→chunk→embed→query
10. Dual-GPU: gpu-layers=-1, tensor_split=1,1
11. HNSW index active on chunks table
12. Purge handler active in docling_batch.py
13. SUPPORTED extensions: .pdf .docx .pptx .html .xlsx .md .txt
14. Session persistence: Cloudflare Tunnel → vault-http → Vault (LIVE)
15. Lane 00 = Integration Layer
16. Prompt placement: Character→Context ONLY in text-gen-webui
17. Tailscale Funnel: background persistent on gaming-ai-System port 8888
18. Vault versioning: vault_ledger.json system (designed, build pending)

SECTION 14 — SPRING DOMAIN KNOWLEDGE

KEY APPLICATION LOOKUPS:
  Petroleum refinery valve spring → Inconel 718 (ASTM B637) max 1100F
  Marine application → Monel 400 (AMS 7233) or SS 316
  Hydrofluoric acid → Monel 400
  Sulfuric acid → Monel 400 or Hastelloy C276
  Chloride environments → SS 316 or Hastelloy C276 or Elgiloy
  Non-magnetic high strength → Elgiloy (AMS 5833) max 850F
  Highest temperature → Inconel 718 or X750 (up to 1100F)
  Shock loads → Chrome Silicon (ASTM A401) or Chrome Vanadium (ASTM A231)
  Cryogenic → Monel 400 or Inconel 600
  Electrical conductivity → Beryllium Copper or Phosphor Bronze
  Constant modulus instruments → NiSpan C (AMS 5225)

MATERIALS INGESTED (691 chunks in pgvector):
  High Carbon Steels: Music Wire A228, Hard Drawn MB A227, Oil Tempered MB A229
  Alloy Steels: Chrome Vanadium A231/A232, Chrome Silicon A401/A877
  Stainless: SS 302/304 A313, SS 316 A313, SS 17-7 PH AMS 5678
  Copper Alloys: Monel 400 AMS 7233, Monel K500 QQ-N-286, Phosphor Bronze B159,
                 Beryllium Copper B197, Brass B134
  Nickel Alloys: Inconel 600 B166, Inconel 718 B637, Inconel X750 AMS 5698/5699,
                 Elgiloy AMS 5833, Hastelloy C276 B574, NiSpan C AMS 5225

SECTION 15 — FIRST ACTIONS FOR NEW THREAD

1. Confirm Cloudflare tunnel is running and paste URL into thread.
   Claude fetches: https://[url]/lane00_lossless_handoff_2026-04-14.md

2. Confirm studio_router.py working:
   python3 ~/apps/studio_router.py "What is the maximum operating temperature for Inconel 718?" --debug
   Expected: Auto-routes 72b, retrieves RAG chunks, answers 1100 degrees F, Unicode clean

3. Collect lane confirmations:
   Lane 03: PT-03-003 WL-04 detection strategy
   Lane 04: PT-04-006 batch 2 HD-72B-0100 through 0109
   Lane 05: PT-05-003 unicode check wired
   Lane 05: PT-05-006 named Cloudflare tunnel
   Lane 05: PT-05-007 vault_ledger.json built

4. Write Vault state files:
   nano /mnt/Vault/00_Overview/studio_master_state.md
   nano /mnt/Vault/00_Overview/pending_tasks.md

5. Run four-query live test suite:
   "What is the maximum operating temperature for Inconel 718?"
   "What material should I use for a spring in hydrofluoric acid service?"
   "What is the ASTM specification for Chrome Silicon valve springs?"
   "Compare Inconel 718 and Inconel X750 for high temperature valve springs"

SECTION 16 — HANDOFF RUNNER

Location: ~/apps/lane00_handoff_runner.py
Current passing: 12 checks
Run: CUDA_VISIBLE_DEVICES="" python3 ~/apps/lane00_handoff_runner.py

END OF LOSSLESS HANDOFF v2
Solutions-Based AI Studio — Lane 00 Integration Layer
Updated: 2026-04-14 — Lane 05 PT-05-005 complete, session persistence live
Pick up at Section 15 First Actions
