GUIDEPOINT
SERVICE CONTRACT · VIEW: GOV
Axiom
GUIDEPOINT is INTEL + COIN + EMAIL composed. Inbound consultation requests are classified and actioned via browser. AI-aligned topics ACCEPT (click REVIEW PROJECT). Off-topic DECLINE (click DECLINE NOW). Fiat earned becomes COIN. Every decision ledgered.
Constraints
MUST: Classify every inbound by topic match against INTEL.md accept list MUST: Auto-accept consultations matching DEXTER expertise (AI, ML, LLM, oncology, bioinformatics) MUST: Auto-decline surveys and off-topic requests MUST: Action via browser — extract REVIEW PROJECT / DECLINE NOW URLs from HTML body MUST: Ledger every classification decision to GUIDEPOINT scope MUST: Ledger every completed consultation as COIN (fiat → COIN) MUST: Parse subject line for project ID and topic — never hardcode project IDs MUST: Rate-limit inbound processing — 10/hr by IP MUST: Validate sender domain is guidepointglobal.com — reject all others MUST NOT: Reply to emails that are not Guidepoint consultation requests MUST NOT: Use AI tools during Guidepoint consultations (per Guidepoint TOS) MUST NOT: Accept consultations with declared conflicts MUST NOT: Fabricate expertise — only accept topics within DEXTER principal scope
COVERAGE:
SPEC
Purpose
GUIDEPOINT is the governed expert-network consultation service. Inbound requests are classified by topic, actioned via browser, and fiat revenue is ledgered as COIN.
Guidepoint Global sends consultation requests to Dr. Hadley via email. Each email contains a topic, project ID, and two action URLs: REVIEW PROJECT (accept) and DECLINE NOW (decline). This service classifies each request against DEXTER’s expertise profile and clicks the appropriate button.
Composition
Primitive: INTEL (topic classification) + COIN (fiat tracking) + EMAIL (inbound trigger)
Service: GUIDEPOINT (governed expert-network consultation product)
Instance: DEXTER principal scope — ABOPM / CANONIC Foundation / HadleyLab
Flow
INBOUND EMAIL (Gmail → forwarding rule → POST guidepoint.dexter-hadley.workers.dev/guidepoint/inbound)
│
├── 1. VALIDATE sender domain (guidepointglobal.com | guidepoint.com)
│
├── 2. PARSE subject → extract topic + project_id
│ Pattern: "Guidepoint - Consultation Request - {TOPIC} (#{ID})"
│
├── 3. CLASSIFY against INTEL.md accept/decline lists
│ → ACCEPT: topics within DEXTER expertise
│ → DECLINE: surveys, off-topic, conflict
│ → HOLD: uncertain — no auto-action
│
├── 4. EXTRACT action URL from HTML body
│ → ACCEPT: href from #button-review-project
│ → DECLINE: href from #button-decline-now
│
├── 5. ACTION via fetch (GET on extracted URL — browser redirect)
│
└── 6. LEDGER decision to GUIDEPOINT scope
{ ts, project_id, topic, decision, pm, pm_email }
Email Pattern
From: {name} <{user}@guidepointglobal.com>
To: Dexter Hadley <dexter.hadley@gmail.com>
Subject: Guidepoint - Consultation Request - {TOPIC} (#{PROJECT_ID})
Reply-To: {name} <{user}@guidepointglobal.com>
Body: HTML with #button-review-project and #button-decline-now anchors
Surveys use sender surveys@guidepoint.com — always DECLINE.
COIN Ledger
On ACCEPT:
type: GUIDEPOINT
key: DEXTER:GUIDEPOINT:{PROJECT_ID}
status: ACCEPTED
fiat: pending (tracked manually post-consultation)
On COMPLETION (manual trigger — POST /guidepoint/complete):
type: COIN
key: DEXTER:GUIDEPOINT:{PROJECT_ID}
inventor: DEXTER
fiat_usd: {amount}
work_ref: guidepoint:{project_id}
API Routes
Hosted on Cloudflare Worker (guidepoint @ guidepoint.dexter-hadley.workers.dev).
| Method | Path | Auth | Rate | Purpose |
|---|---|---|---|---|
| POST | /guidepoint/inbound | Webhook secret | 10/hr | Process forwarded Guidepoint email |
| POST | /guidepoint/complete | Bearer | 5/hr | Record completed consultation + fiat |
| GET | /guidepoint/ledger | Bearer | 60/hr | Read decision history |
Inbound
POST guidepoint.dexter-hadley.workers.dev/guidepoint/inbound
Headers:
X-Webhook-Secret: {GUIDEPOINT_WEBHOOK_SECRET}
Body (forwarded email — raw or parsed):
{
"from": "kangelucci@guidepointglobal.com",
"subject": "Guidepoint - Consultation Request - Authentication Platforms for AI Agents (#1704583)",
"html": "<table>...REVIEW PROJECT...DECLINE NOW...</table>"
}
Response:
{
"ok": true,
"project_id": "1704583",
"topic": "Authentication Platforms for AI Agents",
"decision": "ACCEPT",
"actioned": true
}
Complete
POST /guidepoint/complete
{
"project_id": "1704583",
"fiat_usd": 500,
"notes": "1hr consultation — Arcade.dev, Composio comparison"
}
Response:
{
"ok": true,
"coin": { "key": "DEXTER:GUIDEPOINT:1704583", "fiat_usd": 500 },
"ledger": true
}
Infrastructure
Runtime: Cloudflare Worker (guidepoint)
Storage: GUIDEPOINT_KV namespace (guidepoint:{PROJECT_ID} keys)
Trigger: Gmail forwarding rule → Cloudflare Worker webhook
Secret: GUIDEPOINT_WEBHOOK_SECRET (wrangler secret)
Gmail Forwarding (Google Apps Script)
Source: apps-script.js in this directory.
Runtime: Google Apps Script (script.google.com)
Trigger: Time-driven, every 5 minutes
Search: from:(guidepointglobal.com OR guidepoint.com) -label:GUIDEPOINT-processed newer_than:14d
Label: GUIDEPOINT/processed (auto-created, marks emails as handled)
Secret: Script Properties → GUIDEPOINT_WEBHOOK_SECRET
Setup
- Open https://script.google.com → New project
- Paste contents of
apps-script.js - Project Settings → Script Properties → Add:
GUIDEPOINT_WEBHOOK_SECRET= (from wrangler secret) - Run
processGuidepoint()once manually → authorize Gmail + UrlFetch scopes - Triggers → Add trigger →
processGuidepoint→ Time-driven → Every 5 minutes - Verify: check Executions log for classification results
Service
name = guidepoint (standalone worker)
scope = SERVICES/GUIDEPOINT
domain = guidepoint.dexter-hadley.workers.dev
runtime = Cloudflare Workers
kv = GUIDEPOINT_KV
secret = GUIDEPOINT_WEBHOOK_SECRET
INTEL
Purpose
Classification knowledge for Guidepoint consultation requests. Topic → decision mapping. Derived from DEXTER principal expertise.
DEXTER Expertise Profile
PRIMARY: AI, Machine Learning, Deep Learning, Large Language Models (LLM)
Continual Learning, Transfer Learning, Foundation Models
AI Agents, Authentication Platforms for AI Agents
AI Model Research, AI Utilization
SECONDARY: Oncology, Breast Cancer, Mammography, Medical Imaging
Bioinformatics, Genomics, Computational Biology
Clinical Informatics, Health IT, EHR Systems
Radiology AI, Pathology AI, Digital Health
EMPLOYER: University of Florida College of Medicine
CONFLICTS: NONE
Accept Keywords
Case-insensitive match against email subject line.
AI
Artificial Intelligence
Machine Learning
Deep Learning
LLM
Large Language Model
Foundation Model
Continual Learning
Transfer Learning
AI Agent
Authentication
AI Model
AI Utilization
AI Research
Natural Language Processing
NLP
Computer Vision
Neural Network
Transformer
GPT
Claude
Generative AI
Oncology
Breast Cancer
Mammography
Mammogram
Medical Imaging
Radiology AI
Pathology
Bioinformatics
Genomics
Clinical Informatics
Health IT
Digital Health
Computational Biology
EHR
Electronic Health Record
Decline Keywords
Case-insensitive match against email subject line.
Survey
Recruit Only
Marketing
Demand Generation
Benchmarking
Payer
Interventional Radiology Perspectives
Laboratory Specimen
Outpatient Provider Space
Decline Domains
surveys@guidepoint.com — bulk survey sender, always decline
Decision Matrix
| Signal | Decision |
|-------------------------------------|----------|
| Subject matches ACCEPT keyword | ACCEPT |
| Subject matches DECLINE keyword | DECLINE |
| Sender is surveys@guidepoint.com | DECLINE |
| Subject contains "Urgent" | ACCEPT | (priority flag — same classification)
| No keyword match | HOLD |
| DECLINE + ACCEPT both match | DECLINE | (decline wins — off-topic is off-topic)
Test Vectors
1. "Guidepoint - Consultation Request - Authentication Platforms for AI Agents (#1704583)"
→ ACCEPT (matches: Authentication, AI Agent)
2. "Guidepoint - Consultation Request - AI Model Research (#1699089)"
→ ACCEPT (matches: AI Model, AI Research)
3. "Guidepoint - Consultation Request - AI Utilization (#1695127)"
→ ACCEPT (matches: AI Utilization)
4. "Guidepoint - Laboratory Specimen (Recruit Only) Survey - $50 USD"
→ DECLINE (matches: Survey, Recruit Only, Laboratory Specimen)
5. "Guidepoint - Payer Interventional Radiology Perspectives Survey - $80"
→ DECLINE (matches: Survey, Payer, Interventional Radiology Perspectives)
6. "Guidepoint - Consultation Request - Performance & Benchmarking Analytics Platform - Customers (#1688476)"
→ DECLINE (matches: Benchmarking)
7. "Guidepoint - Consultation Request - Use of AI for Marketing/Demand Generation in the Outpatient Provider Space"
→ DECLINE (matches: Marketing, Demand Generation, Outpatient Provider Space)
8. "Urgent -- Guidepoint - Consultation Request - Authentication Platforms for AI Agents (#1704583)"
→ ACCEPT (matches: Authentication, AI Agent — Urgent flag preserved)
9. "Project Update: Continual Learning Discussion (#1666728)"
→ ACCEPT (matches: Continual Learning)
10. "Guidepoint - Consultation Request - Pharmaceutical Sales Strategy"
→ HOLD (no keyword match — manual review)
LEARNING
Observations
2026-03 — Initial scan of Apple Mail inbox
- 30 Guidepoint emails found in Gmail (All Mail) spanning 2025-06 through 2026-03
- 9 distinct project topics identified
- Most active: Performance & Benchmarking Analytics Platform (#1688476) — 9 emails, all DECLINE-classified
- Highest priority: Authentication Platforms for AI Agents (#1704583) — 5 emails including “Urgent” flag
- AI-aligned: AI Model Research (#1699089), AI Utilization (#1695127), Continual Learning (#1666728) — all ACCEPT
- Off-topic: Surveys (Lab Specimen, Payer IR), Marketing/Demand Gen — all DECLINE
- PM contacts: 8 distinct project managers across Boston and NY offices
- Employer on file: University of Florida College of Medicine
- Conflicts on file: NONE
Pattern
- Guidepoint emails follow strict template:
Guidepoint - Consultation Request - {TOPIC} (#{ID}) - HTML body always contains
#button-review-projectand#button-decline-nowanchor elements - Surveys use
surveys@guidepoint.comsender — distinct from PM-authored consultation requests - “Urgent” prefix added when client needs immediate scheduling
ROADMAP
VOCAB
| Term | Definition |
|---|---|
| HOLD | Classification state — uncertain topic, requires manual review |
INHERITANCE CHAIN
SERVICES
SERVICES compose primitives — INTEL + CHAT + COIN. Every service governed. Every scope discovered.
MUST: Maintain TRIAD integrity (CANON.md + VOCAB.md + README.md)
MUST: Treat SPEC as scope identity (`{SCOPE}` directory), not as a file
MUST: Every SERVICE scope include ROADMAP.md, COVERAGE.md, LEARNING.md, and `{SCOPE}.md` as governed content surfaces
MUST: Discover SERVICE scopes from filesystem only (no manual catalog)
MUST: Keep http:// and magic:// on the same namespace (transport differs, scope path matches)
MUST: CANON.md = axiom + universal constraints (no service names, no paths, no implementation)
MUST: README.md = how to run the CANON (nothing else)
MUST: {SCOPE}.md = SPEC — the interface (purpose, routes, projections, ecosystem)
MUST: SHOP.md = public projection file (per scope, filesystem-discoverable)
MUST: VAULT.md = private projection file (per scope, filesystem-discoverable)
MUST: Runtime implementation remains under ~/.canonic; this workspace is governance-first
MUST NOT: Hardcode service names in CANON constraints (law speaks universals)
MUST NOT: Define ungoverned terms outside VOCAB.md
MUST NOT: Treat `{SCOPE}.md` as SPEC identity
MUST NOT: Move architecture/lifecycle into README
MUST NOT: Leak private projections to public surfaces
MUST NOT: Maintain duplicate mapping tables outside generated manifest outputs
MUST NOT: Add runtime jargon to governance contracts
MUST: Ledger-consuming services declare source ledgers, scope filters, and closure gates
MUST: Learning governance remains live — closure claims require fresh DISCOVER → GENERATE → RELINK evidence
hadleylab-canonic
HADLEYLAB ships software. Every app, book, paper, deal, and patent is PROOF that MAGIC works. COIN = WORK. LEARNING = COMPUTE.
MUST: Every app, book, paper, deal, or patent is evidence of MAGIC MUST: All scopes inherit canonic-canonic/CANONIC.md governance MUST: All users governed under USERS/ via SERVICES/USER MUST: Cross-index INTEL across users (INTEL.md) MUST: Shared events propagate to ALL affected user dashboards MUST: Maintain governance workspace purity (.md files only) MUST: Ledger all COIN (validated work) through MAGIC 255 MUST: Compile all INTEL from governed sources MUST: Keep frontend/runtime implementation under ~/.canonic (hidden runtime) MUST: Surface governed TALK, Library, and SERVICES scopes (no orphan content) MUST: Derive nav labels from governed scope names (no hardcoded strings) MUST NOT: Publish without governance (CANON.md required) MUST NOT: Duplicate primitives — compose from INTEL, CHAT, COIN MUST NOT: Silo intelligence inside a single user when multiple are affected MUST NOT: Expose VAULT contents outside NDA scope MUST NOT: Store runtime artifacts in governance workspace
canonic-canonic
SPEC is governance. `canonic-canonic/` is the spec root.
MUST: Keep this repo governance-only (.md/.pdf) MUST: Publish workspace mapping in CANONIC.git (no hardcoded repo lists) MUST: Preserve three primary lanes: FOUNDATION, INDUSTRIES, MAGIC MUST NOT: Commit runtime artifacts here (runtime belongs in ~/.canonic/) MUST: Sell MAGIC tiers — the product, not the proof (proof is hadleylab-canonic) MUST NOT: Embed beta-test app URLs in platform page content