Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
f4a98bb
Update README.md
mattglory Jan 8, 2026
0a53e28
v1.3: Flash loans working with conservative limits
mattglory Jan 10, 2026
918a1dd
Add comprehensive test suite with 60 passing tests
mattglory Jan 18, 2026
c5c0022
Add frontend dashboard with wallet connection and live protocol stats
mattglory Feb 10, 2026
6d9edcb
Clean up temp files and update gitignore
mattglory Feb 11, 2026
5870a64
Upgrade SNP-FlashStack receiver to v3 with dynamic fees and stats
mattglory Feb 11, 2026
cfaefd1
Merge branch 'feature/receiver-v3-improvements'
mattglory Feb 11, 2026
0979747
Fix sbtc-token auth bug, add 26 edge case tests, register receiver-v3
mattglory Feb 11, 2026
3c1efa9
Add flash loan execution UI with receiver selector and fee preview
mattglory Feb 11, 2026
769fffb
Update CI pipeline and README with accurate project stats
mattglory Feb 11, 2026
cf92ac3
Fix TypeScript build error in receiver config
mattglory Feb 11, 2026
a37c9bc
Fix CI: track package-lock.json files for npm ci
mattglory Feb 11, 2026
4b508b2
Fix CI: add Devnet.toml, enforce LF for Clarity files
mattglory Feb 11, 2026
259d4e7
Add Dependabot config to block major version upgrades
mattglory Feb 11, 2026
d920751
Bump next from 14.2.28 to 14.2.35 in /web
dependabot[bot] Feb 11, 2026
ff9a8f0
Block all major version upgrades in Dependabot
mattglory Feb 11, 2026
5928466
Merge pull request #8 from mattglory/dependabot/npm_and_yarn/web/next…
mattglory Feb 11, 2026
0d310fc
Bump @clarigen/cli from 4.0.1 to 4.1.3
dependabot[bot] Mar 3, 2026
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
5 changes: 5 additions & 0 deletions .clarigen
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@

{
"output": "src/clarigen",
"esm": true
}
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Force LF line endings for Clarity contracts (Clarinet requires LF)
*.clar text eol=lf
2 changes: 1 addition & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ Related to #
```bash
# List the commands you ran to test
clarinet check
clarinet console
clarinet console3
```

### Test Results
Expand Down
23 changes: 23 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
version: 2
updates:
# Root package (contracts/tests)
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "weekly"
open-pull-requests-limit: 5
ignore:
# Block ALL major version upgrades — require manual migration
- dependency-name: "*"
update-types: ["version-update:semver-major"]

# Frontend (web/)
- package-ecosystem: "npm"
directory: "/web"
schedule:
interval: "weekly"
open-pull-requests-limit: 5
ignore:
# Block ALL major version upgrades — require manual migration
- dependency-name: "*"
update-types: ["version-update:semver-major"]
53 changes: 32 additions & 21 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,31 +2,42 @@ name: FlashStack CI

on:
push:
branches: [ main ]
branches: [main]
pull_request:
branches: [ main ]
branches: [main]

jobs:
security-scan:
test-contracts:
name: Test Smart Contracts
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Run security scan
run: |
echo "Security scan passed"

check-contracts:
- uses: actions/checkout@v4

- uses: actions/setup-node@v4
with:
node-version: "20"
cache: "npm"

- name: Install dependencies
run: npm ci

- name: Run contract tests
run: npm test

build-web:
name: Build Frontend
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup Clarinet
run: |
# Simplified check - just verify files exist
if [ -d "contracts" ]; then
echo "Contracts directory found"
ls -la contracts/
echo "Contract check passed"
else
echo "Contracts directory not found"
exit 1
fi
- uses: actions/checkout@v4

- uses: actions/setup-node@v4
with:
node-version: "20"
cache: "npm"
cache-dependency-path: web/package-lock.json

- name: Install dependencies
run: cd web && npm ci

- name: Build Next.js app
run: cd web && npm run build
14 changes: 11 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ yarn-debug.log*
yarn-error.log*
.npm
.eslintcache
package-lock.json
# package-lock.json is tracked — required for CI (npm ci)

# ============================================
# Clarinet
Expand Down Expand Up @@ -60,8 +60,8 @@ desktop.ini
**/private/
**/PRIVATE/
settings/Mainnet.toml
settings/Testnet.toml
settings/Devnet.toml
# Devnet.toml uses standard Clarinet test mnemonics — safe to track, required for CI
# settings/Devnet.toml
.secret
secrets.json
wallet.json
Expand Down Expand Up @@ -104,6 +104,8 @@ logs/
*.bak
*.backup
*~
nul
tmpclaude-*

# ============================================
# Documentation Build
Expand Down Expand Up @@ -136,3 +138,9 @@ SNP_INTEGRATION_STEPS.md
TESTNET_DEPLOYMENT.md
deployments/testnet-*.yaml
!deployments/testnet-plan.yaml

# ============================================
# Frontend (web/)
# ============================================
web/.next/
web/node_modules/
6 changes: 6 additions & 0 deletions Clarinet.toml
Original file line number Diff line number Diff line change
Expand Up @@ -75,4 +75,10 @@ callee_filter = false
path = "contracts/snp-flashstack-receiver.clar"
clarity_version = 2
epoch = 2.5
depends_on = ["flash-receiver-trait", "sbtc-token", "flashstack-core"]

[contracts.snp-flashstack-receiver-v3]
path = "contracts/snp-flashstack-receiver-v3.clar"
clarity_version = 2
epoch = 2.5
depends_on = ["flash-receiver-trait", "sbtc-token", "flashstack-core"]
Loading