Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
169 commits
Select commit Hold shift + click to select a range
4f80aa5
Merge pull request #1160 from selfxyz/dev
transphorm Sep 30, 2025
86b1589
Merge pull request #1167 from selfxyz/dev
transphorm Oct 1, 2025
b7c5bc7
feat: selfrica circuit and tests
Vishalkulkarni45 Oct 1, 2025
ed841d7
chore: remove unused code
Vishalkulkarni45 Oct 1, 2025
c55112d
chore: add polish to the mobile demo app (#1135)
transphorm Oct 1, 2025
6468ee9
fix: ofac (#1172)
Nesopie Oct 1, 2025
9131cd3
ease ofac check in go-sdk similar to ts-sdk (#1174)
Vishalkulkarni45 Oct 1, 2025
1856c9b
move fcm token storage (#1175)
aaronmgdr Oct 1, 2025
3b14f09
introduce usePrepareDocumentProof in mobile SDK (#1176)
shazarre Oct 1, 2025
422d0cc
App/id picker flow (#1126)
remicolin Oct 1, 2025
4e8b311
Merge pull request #1169 from selfxyz/dev
transphorm Oct 1, 2025
fd1f008
chore: address staging branch issues pr #1169 (#1178)
transphorm Oct 1, 2025
a909ebf
fix podfile.lock (#1180)
transphorm Oct 1, 2025
79fdd04
chore: fix prettier v268 (#1181)
transphorm Oct 1, 2025
1ab97c3
Merge pull request #1179 from selfxyz/dev
transphorm Oct 2, 2025
49b0e55
simplify mobile demo app screens (#1183)
transphorm Oct 2, 2025
a91a955
feat: test for ofac,date and olderthan
Vishalkulkarni45 Oct 2, 2025
968a74c
fix: public signal constant
Vishalkulkarni45 Oct 2, 2025
25634e0
create nice structure for the mobile sdk (#1177)
aaronmgdr Oct 2, 2025
6d935c4
Restore mobile build bump PR automation (#1186)
transphorm Oct 2, 2025
0a04f44
Add LoadingUI and DevLoadingScreen components for enhanced loading ex…
remicolin Oct 2, 2025
eedbc8d
add suggestion in the country picker (#1191)
remicolin Oct 2, 2025
0c6a6cb
lock react-native ios Podfile versions (#1192)
transphorm Oct 2, 2025
c1d30d1
separate MRZ data from userStore (#1187)
shazarre Oct 2, 2025
f2cceb3
expose `useReadMRZ` hook for `DocumentCameraScreen` (#1188)
shazarre Oct 2, 2025
318b83f
Fix mobile demo app document registration (#1182)
transphorm Oct 3, 2025
48f8d79
Merge pull request #1194 from selfxyz/justin/chore-update-staging-wit…
transphorm Oct 3, 2025
429d9f9
This screen is part of the document /onboarding screens not the discl…
aaronmgdr Oct 3, 2025
187fc18
Adds missing check for typescript types to app ci (#1198)
aaronmgdr Oct 3, 2025
a00cb7e
move common aadhaar functions to msdk (#1200)
aaronmgdr Oct 3, 2025
b3f93af
feat: add dsc_sha384_rsapss_65537_48_3072 (#1197)
Vishalkulkarni45 Oct 3, 2025
c68ef2b
fix pr paths and base branch; update build versions (#1202)
transphorm Oct 3, 2025
ad00939
Hotfix/audit fixes (#1193)
seshanthS Oct 3, 2025
0d3439f
test: add mobile sdk demo vitest tests (#1203)
transphorm Oct 4, 2025
efacb8d
fix lint issues (#1208)
transphorm Oct 4, 2025
073f77c
Address edge-to-edge Google Play Store warnings (#1205)
transphorm Oct 4, 2025
bea9b7e
Feat/update contract scripts (#1212)
Tranquil-Flow Oct 6, 2025
e4dab8b
SELF-808: Implement document camera MRZ demo screen (#1204)
transphorm Oct 6, 2025
ffd4c4c
Fix Camera issues (QR code) (#1120)
seshanthS Oct 6, 2025
bebea4c
chore: fix dev build (#1213)
shazarre Oct 6, 2025
be5f781
Fixes: view document info screen (#1201)
seshanthS Oct 6, 2025
cf20b87
Fix release workflow PR body generation (#1217)
transphorm Oct 6, 2025
cebd67d
fix ios lottie animations with delay (#1218)
transphorm Oct 6, 2025
ab97881
fix ios lottie animations with delay (#1218)
transphorm Oct 6, 2025
66cd766
chore: allow mobile "deploy only" labels (#1219)
transphorm Oct 6, 2025
a186c15
chore: allow mobile "deploy only" labels (#1219)
transphorm Oct 6, 2025
f5bbd5e
bump version 2.6.9 (#1221)
transphorm Oct 6, 2025
1ff5787
bump version 2.6.9 (#1221)
transphorm Oct 6, 2025
8acb2d6
fix demo app tests (#1223)
transphorm Oct 6, 2025
1f51a5f
Merge pull request #1220 from selfxyz/justin/cherry-pick-ios-lottie-a…
transphorm Oct 6, 2025
f68c9b0
chore: fix build versions v2.6.9 and mobile deploy fork pr source (#1…
transphorm Oct 7, 2025
66b4dce
chore: fix build versions v2.6.9 and mobile deploy fork pr source (#1…
transphorm Oct 7, 2025
721a3dc
Merge pull request #1225 from selfxyz/justin/test-ios-mobile-deploy-v269
transphorm Oct 7, 2025
c70ead3
fix build version
transphorm Oct 7, 2025
9cc5d90
address missing main commits in dev (#1227)
transphorm Oct 7, 2025
5f47f24
Merge pull request #1226 from selfxyz/justin/chore-fix-staging-build-…
transphorm Oct 7, 2025
2576d8d
chore: incrementing ios build number for version 2.6.9 [github action]
transphorm Oct 7, 2025
f7c5ef0
MOVING COUNTRIES: (#1229)
aaronmgdr Oct 7, 2025
b5b0ba5
Merge pull request #1228 from selfxyz/ci/bump-ios-build-18302877471
transphorm Oct 7, 2025
fecfc6b
Working demo app mrz scan screen (#1232)
transphorm Oct 8, 2025
d0c5899
refine mobile deploy auto pr logic (#1234)
transphorm Oct 8, 2025
3b4c937
refine mobile deploy auto pr logic (#1234)
transphorm Oct 8, 2025
bbf340c
setup for us to have svgs in the mobile sdk (#1230)
aaronmgdr Oct 8, 2025
e23322f
feat: add contract tests
Nesopie Oct 8, 2025
a23bdc4
custom circuit build (#1238)
Vishalkulkarni45 Oct 8, 2025
5d63c60
fix: use an empty array if forbidden countries are not specified (#1239)
Nesopie Oct 8, 2025
8cbb7c2
Mobile SDK: NFC scanning through SelfClient (#1214)
shazarre Oct 8, 2025
c5d0e5d
Custom build circuit (#1242)
Vishalkulkarni45 Oct 8, 2025
8ba5b5e
refactor: reorganize and rename mobile screens (#1207)
transphorm Oct 9, 2025
04562d1
remove unused dep in qrcode-angular (#1247)
Vishalkulkarni45 Oct 9, 2025
8255a9a
chore: tighten types across mobile surface areas (#1209)
transphorm Oct 9, 2025
023cfa0
chore(app): remove unused dependencies and navbar component (#1248)
transphorm Oct 9, 2025
e4382d1
SELF-831: Add mobile demo app e2e tests (#1185)
transphorm Oct 9, 2025
fe04ab2
SELF-832: tweak mobile deploy auto bump version pr feature; v2.7.0 (#…
transphorm Oct 10, 2025
a66c590
SELF-832: tweak mobile deploy auto bump version pr feature; v2.7.0 (#…
transphorm Oct 10, 2025
97310d2
fix timestamp issue (#1231)
seshanthS Oct 10, 2025
756a850
Merge pull request #1237 from selfxyz/justin/test-mobile-deploy-auto-pr
transphorm Oct 10, 2025
cd6ffd6
update release calendar logic (#1256)
transphorm Oct 10, 2025
db55ecc
update release calendar logic (#1256)
transphorm Oct 10, 2025
36310d0
Merge pull request #1257 from selfxyz/justin/migrate-release-calendar…
transphorm Oct 10, 2025
5bb7cef
fix workflow logic (#1260)
transphorm Oct 10, 2025
0dac383
fix workflow logic (#1260)
transphorm Oct 10, 2025
702a683
add timestamp to branch name (#1261)
transphorm Oct 10, 2025
5420fc2
add timestamp to branch name (#1261)
transphorm Oct 10, 2025
14efa1d
Merge pull request #1263 from selfxyz/justin/allow-staging-prs-to-main
transphorm Oct 10, 2025
1b4ec42
rename workflow labels (#1264)
transphorm Oct 10, 2025
66e9cb6
SELF-833: Fix launch screen link interactivity (#1252)
transphorm Oct 10, 2025
62a76a4
Merge branch 'staging' into release/staging-2025-10-10
transphorm Oct 10, 2025
1ca2e8a
fix release calendar pr workflow (#1266)
transphorm Oct 10, 2025
c8bd62e
Merge branch 'dev' into release/staging-2025-10-10
transphorm Oct 10, 2025
6bdc4ae
Move components to sdk for future use (#1243)
aaronmgdr Oct 10, 2025
fafaaf8
Merge pull request #1267 from selfxyz/release/staging-2025-10-10
transphorm Oct 11, 2025
6fbb3cc
chore: bump mobile app version to 2.6.9 [skip ci] (#1265)
github-actions[bot] Oct 11, 2025
54e6584
chore: bump mobile app version to 2.6.9 (#1265)
github-actions[bot] Oct 11, 2025
8fc3191
remove ci (#1270)
transphorm Oct 11, 2025
1a0112f
Merge branch 'dev' into release/staging-2025-10-11
transphorm Oct 11, 2025
38e2bea
bugfix: update migrated components default text color (#1271)
transphorm Oct 11, 2025
b4a21e6
Merge branch 'dev' into release/staging-2025-10-11
transphorm Oct 11, 2025
ae4aebb
optimize github workflow cache space (#1273)
transphorm Oct 11, 2025
6ff2693
Merge branch 'dev' into release/staging-2025-10-11
transphorm Oct 11, 2025
1c888c0
Merge pull request #1269 from selfxyz/release/staging-2025-10-11
transphorm Oct 11, 2025
5d79ec6
chore: bump mobile app version to 2.7.0 (#1274)
github-actions[bot] Oct 11, 2025
8366b6e
bump version and fix ios build number (#1275)
transphorm Oct 12, 2025
da83215
Merge pull request #1276 from selfxyz/release/staging-2025-10-12
transphorm Oct 12, 2025
f9d7591
chore: bump mobile app version to 2.7.0 (#1277)
github-actions[bot] Oct 12, 2025
b3c5603
Move Layout Components to SDK (#1280)
aaronmgdr Oct 14, 2025
838bc49
feat: helper function to gen TEE input
Vishalkulkarni45 Oct 15, 2025
d51ce02
feat: gen circuit inputs with signature
Vishalkulkarni45 Oct 16, 2025
de37ae4
feat: seralized base64
Vishalkulkarni45 Oct 16, 2025
5d04870
Move Country and ID Picker and more (#1286)
aaronmgdr Oct 16, 2025
757ac58
Move DocumentCamera screen to the SDK (#1287)
shazarre Oct 16, 2025
c45853d
speed up prettier and eslint (#1295)
transphorm Oct 17, 2025
62aea03
SELF-908: Add shared WebView screen (#1288)
transphorm Oct 17, 2025
16b1b1c
chore: whitelist poland register circuit (#1290)
Vishalkulkarni45 Oct 17, 2025
e5c445e
fix: DateIsLessFullYear componenet
Vishalkulkarni45 Oct 17, 2025
e01ec18
code rabbit feedback for staging auto deploy logic (#1255)
transphorm Oct 17, 2025
14b7583
don't create release pull requests on merge (#1298)
transphorm Oct 17, 2025
d2ec05c
Add RSA hash algorithm detection in passport parsing
remicolin Oct 17, 2025
b3cba1a
Merge pull request #1303 from selfxyz/remicolin-patch-1
remicolin Oct 17, 2025
30b7158
Update iOS build number to 180
remicolin Oct 17, 2025
e11fff0
Increment iOS build number to 181
remicolin Oct 17, 2025
69cc9d9
Update MARKETING_VERSION to 2.7.1
remicolin Oct 17, 2025
edb1368
Bump version from 2.7.0 to 2.7.1
remicolin Oct 17, 2025
732a5dc
Update version number to 2.7.1 in Info.plist
remicolin Oct 19, 2025
cb2c5dd
Merge branch 'dev' into staging
remicolin Oct 19, 2025
ab07edb
feat: implement push notification management in DevSettingsScreen (#1…
remicolin Oct 19, 2025
6ff50ae
SELF-928: get nav between screens happening. (#1299)
aaronmgdr Oct 20, 2025
fd197fe
feat: register circuit for selfrica
Vishalkulkarni45 Oct 22, 2025
3e44266
feat: selfrica disclose circuit and test
Vishalkulkarni45 Oct 22, 2025
c290010
fix: common module error
Vishalkulkarni45 Oct 23, 2025
c39dc21
feat: add more test and fix constant
Vishalkulkarni45 Oct 23, 2025
6e5a4c7
fix: commitment calculation
Vishalkulkarni45 Oct 23, 2025
077dcc4
[SELF-830] feat: demo app nfc scanning (#1236)
transphorm Oct 23, 2025
2d2908c
fix: update Lottie component usage in QR code SDK (#1284)
prkumar Oct 23, 2025
cd761a9
feat: selfrica contracts
Nesopie Oct 23, 2025
905dac5
Revert "fix: update Lottie component usage in QR code SDK (#1284)" (#…
Nesopie Oct 23, 2025
48ff517
test: selfrica register using unified circuit
Vishalkulkarni45 Oct 24, 2025
750f592
feat: register persona and selfrica circuit
Vishalkulkarni45 Oct 24, 2025
2337eb3
Confirm Identification Screen + animation json dist setup (#1306)
aaronmgdr Oct 24, 2025
8863178
SELF-701: Setup AlphaAlpha Publishing for mobile sdk (#1296)
aaronmgdr Oct 24, 2025
3017660
run workflow when msdk path changes (#1310)
aaronmgdr Oct 24, 2025
4f00dcd
Aaronmgdr/msdk fix publish flow (#1312)
aaronmgdr Oct 24, 2025
250345a
ignore swift false positives (#1319)
transphorm Oct 25, 2025
20684b1
ignore false gitleaks (#1320)
transphorm Oct 25, 2025
2efb060
chore: bump mobile app version to 2.7.1 (#1307)
github-actions[bot] Oct 25, 2025
e0d8c56
fix prod release (#1321)
transphorm Oct 26, 2025
735b380
fix token (#1322)
transphorm Oct 26, 2025
8c5b90e
Contracts cleanup (#1311)
Tranquil-Flow Oct 27, 2025
08fdae0
feat: selfrica circuit and tests
Vishalkulkarni45 Oct 1, 2025
c21543b
chore: remove unused code
Vishalkulkarni45 Oct 1, 2025
7910b87
feat: test for ofac,date and olderthan
Vishalkulkarni45 Oct 2, 2025
2804959
fix: public signal constant
Vishalkulkarni45 Oct 2, 2025
a13468a
feat: add contract tests
Nesopie Oct 8, 2025
bced45e
feat: helper function to gen TEE input
Vishalkulkarni45 Oct 15, 2025
ae6fb3a
feat: gen circuit inputs with signature
Vishalkulkarni45 Oct 16, 2025
fa03e1e
feat: seralized base64
Vishalkulkarni45 Oct 16, 2025
ceff539
fix: DateIsLessFullYear componenet
Vishalkulkarni45 Oct 17, 2025
c47769f
feat: register circuit for selfrica
Vishalkulkarni45 Oct 22, 2025
ec0e41d
feat: selfrica disclose circuit and test
Vishalkulkarni45 Oct 22, 2025
8397155
fix: common module error
Vishalkulkarni45 Oct 23, 2025
a2bc9c9
feat: add more test and fix constant
Vishalkulkarni45 Oct 23, 2025
dbcbd76
fix: commitment calculation
Vishalkulkarni45 Oct 23, 2025
be2f557
feat: selfrica contracts
Nesopie Oct 23, 2025
770bebe
test: selfrica register using unified circuit
Vishalkulkarni45 Oct 24, 2025
ae10ae4
feat: register persona and selfrica circuit
Vishalkulkarni45 Oct 24, 2025
043dd4e
Merge remote-tracking branch 'origin/feat/selfrica' into feat/selfrica
Tranquil-Flow Oct 28, 2025
74fb2f6
refactor: contract size reduction for IdentityVerificationHubImplV2
Tranquil-Flow Oct 28, 2025
dcea2b8
feat: disclose circuit for persona
Vishalkulkarni45 Nov 4, 2025
036646a
feat: update persona ofac trees
Vishalkulkarni45 Nov 4, 2025
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
  •  
  •  
  •  
3 changes: 0 additions & 3 deletions .cursorignore
Original file line number Diff line number Diff line change
Expand Up @@ -199,9 +199,6 @@ app/ios/App Thinning Size Report.txt
local.properties
app/android/android-passport-nfc-reader/examples/

# React Native config
app/react-native.config.cjs

# ========================================
# Miscellaneous
# ========================================
Expand Down
15 changes: 15 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
node_modules
dist
build
coverage
ios/build
android/build
android/app/build
app/vendor
circuits/build
contracts/artifacts
contracts/cache
contracts/typechain-types
**/*.js
**/*.cjs
**/*.mjs
48 changes: 48 additions & 0 deletions .gitguardian.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,57 @@ paths-ignore:
- "**/generated/**/*.crt"
- "**/generated/**/*.pem"

# iOS frameworks and build artifacts
- "**/*.xcframework"
- "**/*.xcframework/**"
- "**/*.swiftinterface"
- "**/NFCPassportReader.xcframework/**"
- "**/OpenSSL.xcframework/**"
- "**/SelfSDK.xcframework/**"
- "**/packages/mobile-sdk-alpha/ios/Frameworks/**"
- "**/packages/mobile-sdk-alpha/ios/SelfSDK/**"
# Ignore specific secret types for mock files
secrets-ignore:
- "Generic Private Key" # For mock certificate keys
- "Generic Certificate" # For mock certificates
- "RSA Private Key" # For mock RSA keys
- "EC Private Key" # For mock EC keys


secret:
ignored_matches:
- match: 2036b4e50ad3042969b290e354d9864465107a14de6f5a36d49f81ea8290def8
name: prebuilt-ios-arm64-apple-ios.private.swiftinterface
ignored_paths:
- '**/*.swiftinterface'
- '**/*.xcframework/**'
- '**/packages/mobile-sdk-alpha/ios/Frameworks/**'
- '**/OpenSSL.xcframework/**'
- '**/demo-app/**/mock/**'
- common/src/mock_certificates/aadhaar/mockAadhaarCert.ts
- '**/NFCPassportReader.xcframework/**'
- common/src/utils/passports/genMockIdDoc.ts
- '**/tests/**/*.crt'
- '**/mock_certificates/**/*.crt'
- '**/mock_certificates/**/*.key'
- '**/demo-app/**/test-data/**'
- '**/generated/**/*.key'
- '**/SelfSDK.xcframework/**'
- '**/mock/**/*.crt'
- '**/generated/**/*.crt'
- '**/test/**/*.key'
- '**/mock/**/*.key'
- '**/test/**/*.crt'
- '**/test/**/*.pem'
- '**/constants/mockCertificates.ts'
- '**/mock/**/*.pem'
- '**/mock_certificates/**/*.pem'
- '**/mock-data/**'
- '**/packages/mobile-sdk-alpha/ios/SelfSDK/**'
- '**/tests/**/*.key'
- '**/generated/**/*.pem'
- '**/tests/**/*.pem'
- '**/test-data/**'
- common/src/mock_certificates/**
- '**/*.xcframework'
version: 2
4 changes: 3 additions & 1 deletion .github/actions/cache-gradle/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@ inputs:
description: Paths to cache
required: false
default: |
~/.gradle/caches
~/.gradle/caches/modules-*
~/.gradle/caches/jars-*
~/.gradle/caches/build-cache-*
~/.gradle/wrapper
cache-version:
description: Additional cache version segment
Expand Down
23 changes: 23 additions & 0 deletions .github/actions/cleanup-gradle-artifacts/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Clean Up Gradle Artifacts

description: Clean up unnecessary Gradle build artifacts to save disk space and reduce cache size.

runs:
using: "composite"
steps:
- name: Clean up Gradle build artifacts
shell: bash
run: |
echo "Cleaning up unnecessary build artifacts to save disk space..."
# Remove build outputs (APK/AAB already tested, no need to cache them)
# Find all Android build directories and clean up intermediates and tmp
find . -type d -path "*/android/app/build/intermediates" -exec rm -rf {} + 2>/dev/null || true
find . -type d -path "*/android/app/build/tmp" -exec rm -rf {} + 2>/dev/null || true
# Clean up Gradle daemon logs and lock files
rm -rf ~/.gradle/daemon
rm -rf ~/.gradle/*.lock
# Remove large cache files that aren't needed for subsequent builds
find ~/.gradle/caches -name "*.lock" -delete 2>/dev/null || true
find ~/.gradle/caches -type f -name "gc.properties" -delete 2>/dev/null || true
echo "Disk usage after cleanup:"
df -h
62 changes: 62 additions & 0 deletions .github/actions/create-version-bump-pr/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Create Version Bump PR
description: Creates a PR from staging changes onto dev branch
inputs:
platform:
description: Platform name (ios or android)
required: true
version:
description: Current version string
required: true
file_paths:
description: File paths to include in the PR (newline separated)
required: true
github_token:
description: GitHub token for creating PR
required: true

runs:
using: composite
steps:
- name: Create version bump PR
shell: bash
run: |
BRANCH_NAME="ci/bump-${{ inputs.platform }}-build-${{ github.run_id }}"

git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"

# Ensure we're on staging branch, not detached HEAD
git fetch origin staging dev
git checkout staging

# Check if staging has commits not in dev (version bumps + any build changes)
COMMITS_AHEAD=$(git rev-list --count origin/dev..staging)

if [ "$COMMITS_AHEAD" -eq 0 ]; then
echo "ℹ️ No new commits on staging compared to dev. Skipping PR creation."
exit 0
fi

echo "📊 Staging is $COMMITS_AHEAD commit(s) ahead of dev"

# Create new branch from current staging (which has all version changes)
git checkout -b ${BRANCH_NAME}

# Push the branch
git push --set-upstream origin ${BRANCH_NAME}

# Determine PR title based on platform
if [ "${{ inputs.platform }}" = "mobile" ]; then
PR_TITLE="chore: bump mobile app version to ${{ inputs.version }}"
else
PR_TITLE="chore: bump ${{ inputs.platform }} build for ${{ inputs.version }}"
fi

gh pr create \
--base dev \
--head ${BRANCH_NAME} \
--title "$PR_TITLE" \
--body "Automated version bump by CI" \
--label "automated"
env:
GH_TOKEN: ${{ inputs.github_token }}
26 changes: 26 additions & 0 deletions .github/actions/free-disk-space/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Free Disk Space

description: Free up disk space on GitHub Actions runners by removing unnecessary pre-installed tools.

runs:
using: "composite"
steps:
- name: Free up disk space
shell: bash
run: |
echo "Disk usage before cleanup:"
df -h
# Remove unnecessary pre-installed tools to free up space
# These are commonly available on GitHub runners but not needed for most builds
# DO NOT remove $AGENT_TOOLSDIRECTORY as it contains active tools like Node.js
sudo rm -rf /usr/share/dotnet
sudo rm -rf /opt/ghc
sudo rm -rf /usr/local/share/boost
# Remove unused languages from hostedtoolcache to save space
# but preserve the directory structure and Node.js
sudo rm -rf /opt/hostedtoolcache/CodeQL 2>/dev/null || true
sudo rm -rf /opt/hostedtoolcache/PyPy 2>/dev/null || true
sudo rm -rf /opt/hostedtoolcache/go 2>/dev/null || true
sudo rm -rf /opt/hostedtoolcache/Ruby 2>/dev/null || true
echo "Disk usage after cleanup:"
df -h
7 changes: 7 additions & 0 deletions .github/actions/get-version/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,18 @@ inputs:
description: "Path to the app directory"
required: true

outputs:
version:
description: "Extracted app version from package.json"
value: ${{ steps.get-version.outputs.version }}

runs:
using: "composite"
steps:
- name: Get version from package.json
id: get-version
shell: bash
run: |
VERSION=$(node -p "require('${{ inputs.app_path }}/package.json').version")
echo "version=$VERSION" >> $GITHUB_OUTPUT
echo "VERSION=$VERSION" >> $GITHUB_ENV
8 changes: 4 additions & 4 deletions .github/workflows/block-non-dev-to-main.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Block non-dev PRs to main
name: Block non-staging PRs to main

on:
pull_request:
Expand All @@ -8,9 +8,9 @@ jobs:
check-source:
runs-on: ubuntu-latest
steps:
- name: Block PRs not from dev
- name: Block PRs not from staging
run: |
if [[ "${{ github.head_ref }}" != "dev" ]]; then
echo "You can only merge from dev to main."
if [[ "${{ github.head_ref }}" != "staging" ]]; then
echo "You can only merge from staging to main."
exit 1
fi
76 changes: 70 additions & 6 deletions .github/workflows/circuits-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,22 @@ on:
- "circuits/circuits/**"
- ".github/workflows/artifacts.yml"
workflow_dispatch:
inputs:
circuit-type:
description: "Circuits to build (comma-separated: register, register_id, register_aadhaar, disclose, dsc). Leave empty to build all."
required: false
type: string
default: ""
circuit-name:
description: "Circuit names to build (comma-separated: register_sha256_sha224_sha224_ecdsa_secp224r1, dsc_sha256_rsa_65537_4096). Cannot be used with circuit-type."
required: false
type: string
default: ""
run-id:
description: "Run ID to download artifacts ."
required: false
type: string
default: ""

concurrency:
group: circuits-build-${{ github.workflow }}-${{ github.ref }}
Expand All @@ -19,6 +35,7 @@ jobs:
runs-on: ["128ram"]
permissions:
contents: read
actions: read
env:
CIRCOM_VERSION: "2.1.9"
CIRCOM_SHA256: "e5575829252d763b7818049df9de2ef9304df834697de77fa63ce7babc23c967"
Expand Down Expand Up @@ -139,14 +156,61 @@ jobs:
- name: Print Circom version
run: circom --version

- name: Download previous artifacts
if: github.event_name == 'workflow_dispatch' && inputs.run-id != ''
uses: dawidd6/action-download-artifact@v6
with:
name: circuits
path: output/
run_id: ${{ inputs.run-id }}

- name: Build cpp circuits
run: |
chmod +x circuits/scripts/build/build_cpp.sh && \
./circuits/scripts/build/build_cpp.sh register &&
./circuits/scripts/build/build_cpp.sh register_id &&
./circuits/scripts/build/build_cpp.sh register_aadhaar &&
./circuits/scripts/build/build_cpp.sh disclose &&
./circuits/scripts/build/build_cpp.sh dsc
chmod +x circuits/scripts/build/build_cpp.sh
chmod +x circuits/scripts/build/build_single_circuit.sh

# Validate inputs - only one should be provided
if [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then
if [[ "${{ inputs.circuit-type }}" != "" && "${{ inputs.circuit-name }}" != "" ]]; then
echo " Error: Cannot provide both circuit-type and circuit-name. Use only one."
exit 1
fi
fi

# Check what type of build to perform
if [[ "${{ github.event_name }}" == "workflow_dispatch" && "${{ inputs.circuit-name }}" != "" ]]; then
# Build circuits by name
INPUT_CIRCUITS="${{ inputs.circuit-name }}"
INPUT_CIRCUITS=$(echo "$INPUT_CIRCUITS" | tr -d ' ')
IFS=',' read -ra CIRCUITS_ARRAY <<< "$INPUT_CIRCUITS"

echo "Building selected circuits: ${{ inputs.circuit-name }}"
for circuit_name in "${CIRCUITS_ARRAY[@]}"; do
echo "Building circuit: $circuit_name"
./circuits/scripts/build/build_single_circuit.sh "$circuit_name"
done

elif [[ "${{ github.event_name }}" == "workflow_dispatch" && "${{ inputs.circuit-type }}" != "" ]]; then
# Build circuits by type
INPUT_CIRCUITS="${{ inputs.circuit-type }}"
INPUT_CIRCUITS=$(echo "$INPUT_CIRCUITS" | tr -d ' ')
IFS=',' read -ra CIRCUITS_ARRAY <<< "$INPUT_CIRCUITS"

echo "Building selected circuits: ${{ inputs.circuit-type }}"
for circuit in "${CIRCUITS_ARRAY[@]}"; do
echo "Building circuit: $circuit"
./circuits/scripts/build/build_cpp.sh "$circuit"
done

else
# Build all circuits (default behavior)
echo "Building all circuits (default behavior)"
./circuits/scripts/build/build_cpp.sh register
./circuits/scripts/build/build_cpp.sh register_id
./circuits/scripts/build/build_cpp.sh register_aadhaar
./circuits/scripts/build/build_cpp.sh disclose
./circuits/scripts/build/build_cpp.sh dsc
fi

- name: Upload Artifact
uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4
Expand Down
Loading
Loading