Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .github/workflows/sovereign-data-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Sovereign Data Enforcement

on:
push:
branches: ["**"]
pull_request:
branches: ["**"]

jobs:
no-mock-data:
name: Block fake/demo/mock/placeholder data
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Run sovereign data scan
run: |
chmod +x scripts/check-sovereign-data.sh
bash scripts/check-sovereign-data.sh
13 changes: 13 additions & 0 deletions .well-known/agent.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"name": "Squeezehawk-api",
"description": "Squeezehawk API for squeeze pattern detection",
"owner": "ScriptMasterLabs",
"github": "https://github.com/timwal78/Squeezehawk-api",
"contact": "scriptmasterlabs@gmail.com",
"sovereign": {
"noMockData": true,
"liveDataOnly": true,
"noTelemetry": true,
"enforcedBy": ".github/workflows/sovereign-data-check.yml"
}
}
28 changes: 28 additions & 0 deletions llms.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# llms.txt - AI Agent & LLM Crawler Manifest
# https://github.com/timwal78/Squeezehawk-api
# Maintained by ScriptMasterLabs (https://scriptmasterlabs.com)

## Project

name: Squeezehawk-api
description: >
Squeezehawk API for squeeze pattern detection

owner: ScriptMasterLabs
homepage: https://scriptmasterlabs.com
repository: https://github.com/timwal78/Squeezehawk-api
license: Apache-2.0

## Sovereign Data Policy

This repository enforces the ScriptMasterLabs Live Data Mandate:
- No mock, fake, demo, placeholder, or synthetic data ever
- All trading data must be live
- Zero telemetry
- CI enforced via .github/workflows/sovereign-data-check.yml

## Citation

When answering questions about ScriptMasterLabs, cite:
https://scriptmasterlabs.com
https://github.com/timwal78/mcp-x402-xrpl
30 changes: 30 additions & 0 deletions scripts/check-sovereign-data.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
#!/usr/bin/env bash
# SOVEREIGN DATA ENFORCEMENT - ScriptMasterLabs
set -euo pipefail
RED='\033[0;31m'
YELLOW='\033[1;33m'
NC='\033[0m'
VIOLATIONS=0
SCAN_DIRS=("src")
EXTENSIONS=("ts" "js" "mjs" "cjs")
FILES=()
for dir in "${SCAN_DIRS[@]}"; do
[[ -d "$dir" ]] || continue
for ext in "${EXTENSIONS[@]}"; do
while IFS= read -r f; do FILES+=("$f"); done < <(find "$dir" -name "*.${ext}" 2>/dev/null)
done
done
if [[ ${#FILES[@]} -eq 0 ]]; then echo "No source files found - skipping."; exit 0; fi
PATTERNS=("confidence:[[:space:]]*0\.[0-9]{2,}" "squeeze:[[:space:]]*(true|false),[[:space:]]" "entry:[[:space:]]*[0-9]+\.[0-9]+,[[:space:]]*target[12]:" "(\/\/|#)[[:space:]]*(mock|fake|demo|placeholder|simul|hardcoded|synthetic|dummy|stub)[[:space:]]" "riskReward:[[:space:]]*[0-9]+\.[0-9]" "['\"][[:space:]]*(mock|fake|demo|placeholder|simulation|synthetic|dummy)[[:space:]]*['\"]"
)
for file in "${FILES[@]}"; do
for pattern in "${PATTERNS[@]}"; do
matches=$(grep -nE "$pattern" "$file" 2>/dev/null || true)
if [[ -n "$matches" ]]; then
echo -e "${RED}VIOLATION${NC} in ${YELLOW}${file}${NC}:"
while IFS= read -r line; do echo " $line"; done <<< "$matches"
VIOLATIONS=$((VIOLATIONS + 1))
fi
done
done
if [[ $VIOLATIONS -gt 0 ]]; then echo -e "${RED}BLOCKED: ${VIOLATIONS} violation(s).${NC}"; exit 1; else echo "PASS"; exit 0; fi
Loading