Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
164 commits
Select commit Hold shift + click to select a range
3b4bf26
feat: add deterministic test provider for staging/testnet closes #459
kimanicode May 26, 2026
fe4490b
fix: resolve merge conflict in humanitarian.py - add test provider an…
kimanicode May 26, 2026
ecee21c
fix: resolve merge conflict in humanitarian.py - add test provider an…
kimanicode May 26, 2026
52fc822
fix: resolve merge conflicts - add test provider with timeout and cir…
kimanicode May 26, 2026
97f8807
fix: restore circuit breaker config settings alongside test provider …
kimanicode May 26, 2026
614315f
fix: resolve all merge conflicts with upstream/main
kimanicode May 26, 2026
90a6319
Add claim window and expiry boundary validation (#422)
boalambo May 27, 2026
ac46f46
Fix clippy warnings in boundary_validation_tests.rs
boalambo May 27, 2026
591883a
Fix late claim expiry behavior and update boundary validation tests
boalambo May 27, 2026
74b02c4
feat(frontend): add reviewer demo-checklist route with feature flag
datagerl May 27, 2026
5d0a1e6
Merge pull request #489 from datagerl/feat/demo-checklist-reviewer-route
Cedarich May 27, 2026
5cf20ee
Add Soroban testnet deployment runbook
malik203 May 27, 2026
4062860
Merge pull request #485 from boalambo/feature/claim-window-boundary-v…
Cedarich May 27, 2026
d60a411
Merge pull request #491 from malik203/runbook/onchain-testnet-deploy
Cedarich May 27, 2026
4ce303d
test: add testnet smoke suite and merkle allowlist tools (CI gated)
gelluisaac May 27, 2026
f480dd1
Merge pull request #492 from gelluisaac/add/testnet-merkle-smoke
Cedarich May 27, 2026
522d0a8
Harden token validation and transfer errors
Bigdaddyobamo May 27, 2026
581d44e
Merge pull request #494 from Bigdaddyobamo/codex/token-address-valida…
Cedarich May 27, 2026
5ef2e75
Add gas profiling for high-volume distributions (#415)
boalambo May 27, 2026
8ed5737
feat: wallet network mismatch guard for Freighter (#441)
bajehjude-del May 27, 2026
7b193f6
Merge pull request #498 from bajehjude-del/feature/wallet-network-mis…
Cedarich May 27, 2026
b70a895
docs: add testnet deployment runbook for aid_escrow contract
malik203 May 27, 2026
6635c33
ix: Testnet contract config + network guardrails
OmniZlatoon May 28, 2026
fa4c750
Merge pull request #499 from malik203/docs/testnet-deploy-runbook
Cedarich May 28, 2026
a9e5f5e
Fix Contract CI formatting in gas profiling tests
boalambo May 28, 2026
7e35018
resolved CLI issues
OmniZlatoon May 28, 2026
2429878
Merge branch 'Pulsefy:main' into main
OmniZlatoon May 28, 2026
d8c28f0
Merge pull request #500 from OmniZlatoon/main
Cedarich May 28, 2026
877d610
interface implementation errors fixed
OmniZlatoon May 28, 2026
8868912
Merge branch 'main' of https://github.com/OmniZlatoon/Soter-fork
OmniZlatoon May 28, 2026
20fd3d1
Fix clippy warnings in gas profiling test
boalambo May 28, 2026
ab7da0b
Merge pull request #504 from OmniZlatoon/main
Cedarich May 28, 2026
9d82229
Merge pull request #496 from boalambo/feature/415-gas-profiling
Cedarich May 28, 2026
8151492
fix: Standardize Explorer Links (Contract + Tx) in UI
Uche44 May 28, 2026
c4f43a7
feat(ai-service): add /health/dependencies probe endpoint
Whiznificent May 28, 2026
e34b4d7
Merge pull request #505 from Uche44/fix/standardize-explorer-links
Cedarich May 28, 2026
37d92aa
Merge pull request #506 from Whiznificent/feat/health-dependencies-probe
Cedarich May 28, 2026
8fe1165
feat(backend): add testnet integration harness for Soroban AidEscrow …
tobechi-dev May 28, 2026
cf9a80d
Merge pull request #507 from tobechi-dev/feature/testnet-integration-…
Cedarich May 28, 2026
65f205c
feat: Idempotency keys for On-chain Mutation
Truphile May 28, 2026
33a6aca
feature/signed-artifact-access-tokens
May 28, 2026
820f252
feat(contracts): safe testnet redeployment and versioning (#413)
utahkanz-ops May 28, 2026
dffb484
Merge pull request #509 from utahkanz-ops/feat/contract-redeploy-migr…
Cedarich May 28, 2026
b86486d
Merge pull request #510 from BuddiBisong/feature/signed-artifact-acce…
Cedarich May 28, 2026
ab6598a
feat: Idempotency keys for On-chain Mutation
Truphile May 28, 2026
7366d4b
Merge branch 'main' into feature/Idempotency_keys
Truphile May 28, 2026
14bbeb7
chore: regenerate pnpm-lock.yaml via CLI
Truphile May 28, 2026
f1e8e3c
Merge pull request #476 from kimanicode/feat/test-provider-determinis…
Cedarich May 29, 2026
111db27
https://github.com/jaynomyaro/Soter.git
jaynomyaro May 29, 2026
0c7ae3c
feat(providers): add deterministic test provider for staging/CI (#459)
kimanicode May 29, 2026
bf40ff6
feat(diagnostics): add diagnostics screen with app version, network s…
May 29, 2026
04f7c2f
Merge pull request #511 from jaynomyaro/main
Cedarich May 29, 2026
24b9823
docs: add README for diagnostics feature
May 29, 2026
02028ce
test(verification): update stability tests for test provider
kimanicode May 29, 2026
c44d966
Merge pull request #512 from kimanicode/issue/459-deterministic-test-…
Cedarich May 29, 2026
bcd2612
feat: diagnostic-feature
May 29, 2026
67fa3bd
feat: Idempotency keys tests fix
Truphile May 29, 2026
a8ae00c
feat(evidence): harden upload validation and limits (#245)
Nworah-Gabriel May 29, 2026
3126e56
feat: Add evidence deduplication with org-scoped fingerprinting
hkyuni May 29, 2026
16d1b01
Merge pull request #513 from nuhumusamagaji/feature/issue-452-diagono…
Cedarich May 29, 2026
0c3c3dc
Merge pull request #514 from Nworah-Gabriel/main
Cedarich May 29, 2026
995ac03
Merge branch 'main' into feature/evidence-deduplication
hkyuni May 29, 2026
95c23c3
feat: Idempotency keys build fix
Truphile May 29, 2026
71c1c25
fix: Add missing opposite relation field for EvidenceQueueItem in Org…
hkyuni May 29, 2026
20b8cbe
fix: Add relation name to Organization-EvidenceQueueItem relation
hkyuni May 29, 2026
d56488d
Merge pull request #508 from Truphile/feature/Idempotency_keys
Cedarich May 29, 2026
6bb446a
fix: Add type annotation to matrix array in levenshteinDistance
hkyuni May 29, 2026
bda39a0
Merge pull request #515 from hkyuni/feature/evidence-deduplication
Cedarich May 29, 2026
54a20d4
Initial PII scrubbing regression harness
Sughter99 May 29, 2026
b0ee564
Merge pull request #516 from Blckjiggy/main
Cedarich May 29, 2026
0485123
feat(#434): add webhook delivery receipts spec and requirements
FaveTeamz May 29, 2026
348c5f6
Merge pull request #517 from FaveTeamz/feat/434-webhook-delivery-rece…
Cedarich May 29, 2026
08578ba
feat(ui): add environment and testnet network indicator with contract…
mijinummi May 29, 2026
620136a
feat(testnet-ui): add testnet faucet helper panel for demo environments
mijinummi May 29, 2026
736a5ca
Merge pull request #518 from mijinummi/feat/440-network-environment-i…
Cedarich May 29, 2026
b2e9b8e
Merge pull request #519 from mijinummi/feat/443-testnet-faucet-helper-ui
Cedarich May 29, 2026
d2ee65b
feat: implement OCR regression testing harness with CLI, evaluator, a…
bytebinders May 29, 2026
0f540b1
Add staging/testnet environment profile and config validation for AI …
dee-john May 29, 2026
b56b675
Entity Linking to Projects, Assets, and Ecosystem Registry
MercyDuru May 29, 2026
2c646f7
fix: correct config import for environment profile validation
dee-john May 30, 2026
2a90b5f
Closes #430: evidence upload session
martoniel May 30, 2026
36e1326
feat: add sample_001.png to regression harness document dataset
bytebinders May 30, 2026
2419786
feat: implement persistent background sync queue with retry logic and…
fadesany May 30, 2026
6e25cfe
fix errors
MercyDuru May 30, 2026
1dd2f0b
Merge pull request #525 from martoniel/add/evidence-upload-session
Cedarich May 30, 2026
01dfc43
Merge pull request #527 from fadesany/Background-Retry-for-Pending
Cedarich May 30, 2026
6996537
Add testnet observability metrics
newmattock May 30, 2026
47c3beb
Merge pull request #529 from newmattock/codex/issue-438-testnet-obser…
Cedarich May 30, 2026
665050d
fixed errors
MercyDuru May 30, 2026
7f6e446
feat(tx): add transaction tracking models
mijinummi May 30, 2026
0dc7f17
Merge pull request #524 from ObedChibunna/feat/issue
Cedarich May 30, 2026
bcc0c3b
Merge pull request #531 from mijinummi/feat/testnet-transaction-progress
Cedarich May 30, 2026
9d8d4ef
Fix staging/test environment default request rate limit in ai-service…
dee-john May 30, 2026
c5825b1
Merge pull request #522 from dee-john/staging-env-profile
Cedarich May 30, 2026
13c5739
feat(onchain): add transaction status polling endpoint
dotmantissa May 30, 2026
5df5c08
fix(onchain): implement getTransactionStatus in SorobanOnchainAdapter
dotmantissa May 30, 2026
ad2a94f
Merge pull request #532 from dotmantissa/main
Cedarich May 30, 2026
b1d8e0d
Testnet Demo Seed Endpoint
MercyDuru May 31, 2026
616fd61
chore: update gitignore for python and kiro artifacts
fadee26 May 31, 2026
7d101aa
Merge pull request #538 from KuchiMercy/feat/testnet-status
Cedarich May 31, 2026
62dd5fd
Merge pull request #539 from fadee26/cleanup/artifacts-and-kiro
Cedarich May 31, 2026
d074019
feat: add on-chain health probe endpoint
DavisVT May 31, 2026
785d0c5
test: fix health controller tests by adding onchain adapter mock
DavisVT May 31, 2026
3394ea5
feat: implement OCRService with Tesseract integration and regex-based…
bytebinders Jun 1, 2026
fb80f19
Merge pull request #540 from DavisVT/feature/onchain-health-probe
Cedarich Jun 1, 2026
da98e47
Fixing the build error|
Babigdk Jun 1, 2026
32c2522
deploy: testnet escrow vercel frontend db-metadata
titilayo967 Jun 1, 2026
cc31ff6
Merge pull request #502 from Babigdk/feature/ledger-backfill-419
Cedarich Jun 1, 2026
661a5ba
Cleanup
Cedarich Jun 2, 2026
87de93c
chores
GodwinEkoh Jun 2, 2026
38d5fac
Update README.md
Cedarich Jun 2, 2026
a220294
Update README.md
Cedarich Jun 2, 2026
6ce2858
chore(conflict): Merge upstream/main into deploy/testnet-escrow-verce…
titilayo967 Jun 3, 2026
0def78f
test: generated test snapshots after running tests
titilayo967 Jun 3, 2026
9c76d33
feat: record AidEscrow testnet deployment & update build toolchain (#…
titilayo967 Jun 3, 2026
4b3a056
feat: persist deployment metadata in database (#418)
titilayo967 Jun 3, 2026
60db2c6
fix(frontend): resolve TypeScript errors and standardize type definit…
titilayo967 Jun 4, 2026
f5a6dec
fix(i18n): resolve next-intl layout crash by awaiting requestLocale p…
titilayo967 Jun 4, 2026
2c5f330
chore(deploy): configure vercel production environment and clean lock…
titilayo967 Jun 4, 2026
b2c57bc
test(backend): fix schema mismatches and refactor E2E test suites
titilayo967 Jun 4, 2026
57eb053
test(backend): fix campaign creation assertion for primitive budget type
titilayo967 Jun 4, 2026
484c488
Merge pull request #541 from titilayo967/deploy/testnet-escrow-vercel…
Cedarich Jun 4, 2026
d6ff967
fixed deployment
Cedarich Jun 5, 2026
29708d6
chore: add wave-5 issue markdown files
Cedarich Jun 5, 2026
8e98f3e
cleanup
Cedarich Jun 5, 2026
18b12cd
chore(vercel): deploy frontend app only
Cedarich Jun 5, 2026
afc0133
chore(vercel): remove deprecated name property
Cedarich Jun 5, 2026
aff7c0e
feat: implement OCR service with Tesseract integration and regex-base…
bytebinders Jun 9, 2026
d72899f
test: add regex pattern validation tests for name extraction logic
bytebinders Jun 9, 2026
9a7851f
Merge pull request #521 from bytebinders/main
Cedarich Jun 9, 2026
b621f16
feat: propagate correlation id headers and include in logs
swankybae Jun 23, 2026
0a26093
feat: add anchor metadata support to AI endpoints (closes #608)
fahatadam Jun 23, 2026
be38572
Merge pull request #625 from swankybae/feat/propagate-correlation-id
Cedarich Jun 23, 2026
57f3031
Merge pull request #624 from fahatadam/main
Cedarich Jun 23, 2026
311c7c5
fix: #618 Artifact Access Hardening - Auth and Signed URLs
KCEE0901 Jun 23, 2026
3b11981
Add resumable evidence upload sessions to ai-service
eleven-smg Jun 24, 2026
536799c
Add async OCR job queue
Derry255 Jun 24, 2026
c13bbe6
Merge pull request #627 from KCEE0901/618-artifact-access-hardening
Cedarich Jun 24, 2026
734cb1a
Merge pull request #628 from eleven-smg/feat/resumable-evidence-uploads
Cedarich Jun 24, 2026
0d9fc9f
Merge pull request #629 from Derry255/fix/async-heavy-job-queue
Cedarich Jun 24, 2026
c953d74
Accessibility Pass (Keyboard + Contrast + Aria)
RemmyAcee Jun 24, 2026
df98cab
feat: add response caching for safe read operations
Joeloo1 Jun 24, 2026
eeb3eaf
Merge pull request #633 from RemmyAcee/access-pass
Cedarich Jun 25, 2026
b294573
feat(backend): Implement Soroban transaction lifecycle tracking for c…
Henrichy Jun 25, 2026
5b364d1
Updated
Henrichy Jun 25, 2026
b416053
fix: resolve linting errors and test failures
Joeloo1 Jun 25, 2026
c2b2d4f
fix(#596): Block claim submission on network mismatch
mallison031 Jun 25, 2026
050302e
fix: resolve test failures in CI
Joeloo1 Jun 25, 2026
de5bfa1
Merge pull request #638 from mallison031/feat/wallet-network-mismatch…
Cedarich Jun 25, 2026
e21d351
Merge pull request #1 from Pulsefy/main
Henrichy Jun 25, 2026
cbd5ce3
updated
Henrichy Jun 25, 2026
f8ecb87
fix: add error handler and mock set for custom key generator test
Joeloo1 Jun 25, 2026
b98c218
fix(notifications): harden deep link routing across app lifecycle
Olasunkanmi975 Jun 25, 2026
bcb1662
Merge pull request #639 from Olasunkanmi975/fix/notification-deeplink…
Cedarich Jun 25, 2026
a2e9b29
Merge pull request #636 from drips-projects/Add-Response-Caching
Cedarich Jun 25, 2026
75a765c
feat: implement AI-driven verification service with circuit breakers …
ohamamarachi474-del Jun 26, 2026
cba353a
Merge pull request #637 from Henrichy/main
Cedarich Jun 26, 2026
577db27
Merge pull request #640 from ohamamarachi474-del/verification-service…
Cedarich Jun 26, 2026
6da3889
🎪 docs: Add Swagger examples so devs stop asking "what does the API w…
datagerl Jun 26, 2026
0d0ea86
git commit -m "fix all the bugs"
datagerl Jun 27, 2026
9e94556
fix
datagerl Jun 27, 2026
f8cc4ce
the fix
datagerl Jun 27, 2026
123ebd8
the fix
datagerl Jun 27, 2026
9608b95
Update package.json
datagerl Jun 27, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 4 additions & 5 deletions .github/workflows/ai-service-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -74,23 +74,22 @@ jobs:
pip install -r requirements.txt

- name: Run tests with pytest
id: pytest
working-directory: ./app/ai-service
run: |
pytest --cov=. --cov-report=xml || echo "No tests found or tests failed"
continue-on-error: true
pytest --cov=. --cov-report=xml

- name: Run setup verification
working-directory: ./app/ai-service
run: |
python test_setup.py

- name: Upload coverage reports to Codecov
if: steps.pytest.conclusion == 'success'
uses: codecov/codecov-action@v4
with:
file: ./app/ai-service/coverage.xml
flags: ai-service
continue-on-error: true

build:
runs-on: ubuntu-latest
needs: test
Expand Down
33 changes: 33 additions & 0 deletions .github/workflows/ci-python-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: CI - Python Tests

on:
push:
paths:
- 'app/ai-service/**'
pull_request:
paths:
- 'app/ai-service/**'

jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'

- name: Install dependencies
working-directory: app/ai-service
run: |
python -m pip install --upgrade pip
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
pip install pytest

- name: Run tests
working-directory: app/ai-service
run: |
pytest -q
56 changes: 56 additions & 0 deletions .github/workflows/ocr-regression.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: OCR Regression Test

on:
push:
paths:
- 'app/ai-service/services/ocr.py'
- 'app/ai-service/services/preprocessing.py'
- 'app/ai-service/regression_harness/**'
branches: [ main, develop ]
pull_request:
paths:
- 'app/ai-service/services/ocr.py'
- 'app/ai-service/services/preprocessing.py'
- 'app/ai-service/regression_harness/**'
branches: [ main ]
workflow_dispatch:

jobs:
regression:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
cache: 'pip'

- name: Install System Dependencies
run: |
sudo apt-get update
sudo apt-get install -y tesseract-ocr libtesseract-dev

- name: Install Python Dependencies
working-directory: ./app/ai-service
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install Pillow pytesseract

- name: Run OCR Regression Harness
working-directory: ./app/ai-service
run: |
export PYTHONPATH=$PYTHONPATH:.
python regression_harness/cli.py --output ocr_report.json

- name: Upload Regression Report
if: always()
uses: actions/upload-artifact@v4
with:
name: ocr-regression-report
path: app/ai-service/ocr_report.json
retention-days: 14
48 changes: 48 additions & 0 deletions .github/workflows/testnet-smoke.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Testnet Integration Harness

on:
workflow_dispatch:
inputs:
run_write_flow:
description: 'Run write flow (requires SOROBAN_TOKEN_ADDRESS set)'
type: boolean
default: false
push:
branches:
- main
- 'release/**'

jobs:
integration-harness:
name: Testnet Integration Harness
runs-on: ubuntu-latest
if: >
github.event_name == 'workflow_dispatch' || (secrets.SOROBAN_CONTRACT_ID != '' && secrets.SOROBAN_RPC_URL != '')
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: '20'

- name: Install dependencies
working-directory: tools/testnet-smoke
run: |
npm install

- name: Run integration harness
working-directory: tools/testnet-smoke
env:
SOROBAN_RPC_URL: ${{ secrets.SOROBAN_RPC_URL || 'https://soroban-testnet.stellar.org' }}
SOROBAN_CONTRACT_ID: ${{ secrets.SOROBAN_CONTRACT_ID }}
SOROBAN_ADMIN_SECRET_KEY: ${{ secrets.SOROBAN_ADMIN_SECRET_KEY }}
SOROBAN_TOKEN_ADDRESS: ${{ secrets.SOROBAN_TOKEN_ADDRESS }}
SOROBAN_RECIPIENT_SECRET_KEY: ${{ secrets.SOROBAN_RECIPIENT_SECRET_KEY }}
SOROBAN_NETWORK_PASSPHRASE: ${{ secrets.SOROBAN_NETWORK_PASSPHRASE || 'Test SDF Network ; September 2015' }}
SMOKE_RETRIES: ${{ vars.SMOKE_RETRIES || '3' }}
SMOKE_RETRY_DELAY_MS: ${{ vars.SMOKE_RETRY_DELAY_MS || '2000' }}
SMOKE_OP_TIMEOUT_MS: ${{ vars.SMOKE_OP_TIMEOUT_MS || '120000' }}
run: |
node index.js
65 changes: 64 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,13 @@ node_modules/
.pnp
.pnp.js

# Python
__pycache__/
*.pyc

# Kiro
.kiro/

# Compiled output
dist/
build/
Expand Down Expand Up @@ -42,6 +49,18 @@ expo-env.d.ts
# TypeScript
*.tsbuildinfo

# Python
__pycache__/
*.pyc

# Local databases
*.db
*.sqlite
*.sqlite3

# Local dumps
output.txt

# IDE
.idea/
.project
Expand Down Expand Up @@ -86,4 +105,48 @@ reports/*

.trae/
.env.test
.env
.env
# ---------------------------------------------------------------------------
# AI assistant / coding-agent artifacts
# Keep tool-specific config, history and caches out of the repo so the project
# does not advertise which AI tooling (if any) was used.
# ---------------------------------------------------------------------------
# Anthropic Claude / Claude Code
.claude/
.claude.json
.claude.local.json
CLAUDE.md
CLAUDE.local.md
.anthropic/
# Model Context Protocol
.mcp.json
# Cursor
.cursor/
.cursorrules
.cursorignore
# GitHub Copilot
.github/copilot-instructions.md
.github/instructions/
.copilot/
# Aider
.aider*
# Continue
.continue/
# Codeium / Windsurf
.codeium/
.windsurf/
.windsurfrules
# Cline / Roo Code
.clinerules
.cline/
.roo/
.roomodes
# Tabnine
.tabnine/
# Google Gemini CLI
.gemini/
GEMINI.md
# Sourcegraph Cody
.cody/
# SpecStory
.specstory/
1 change: 1 addition & 0 deletions .kiro/specs/webhook-delivery-receipts/.config.kiro
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"specId": "21ae2bce-1fda-4f65-b9c0-72515c62bc1d", "workflowType": "requirements-first", "specType": "feature"}
Loading
Loading