Initial project setup: Add contracts, API definitions, tests, and documentation
- Add Foundry project configuration (foundry.toml, foundry.lock) - Add Solidity contracts (TokenFactory138, BridgeVault138, ComplianceRegistry, etc.) - Add API definitions (OpenAPI, GraphQL, gRPC, AsyncAPI) - Add comprehensive test suite (unit, integration, fuzz, invariants) - Add API services (REST, GraphQL, orchestrator, packet service) - Add documentation (ISO20022 mapping, runbooks, adapter guides) - Add development tools (RBC tool, Swagger UI, mock server) - Update OpenZeppelin submodules to v5.0.0
This commit is contained in:
113
api/packages/openapi/v1/paths/bridge.yaml
Normal file
113
api/packages/openapi/v1/paths/bridge.yaml
Normal file
@@ -0,0 +1,113 @@
|
||||
paths:
|
||||
/bridge/lock:
|
||||
post:
|
||||
summary: Lock tokens for bridge
|
||||
description: Lock tokens in bridge vault for cross-chain transfer
|
||||
operationId: bridgeLock
|
||||
tags:
|
||||
- Bridge
|
||||
security:
|
||||
- oauth2:
|
||||
- bridge:write
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../components/schemas.yaml#/components/schemas/BridgeLockRequest'
|
||||
responses:
|
||||
'201':
|
||||
description: Tokens locked
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../components/schemas.yaml#/components/schemas/BridgeLock'
|
||||
'400':
|
||||
$ref: '../openapi.yaml#/components/responses/BadRequest'
|
||||
|
||||
/bridge/unlock:
|
||||
post:
|
||||
summary: Unlock tokens from bridge
|
||||
description: Unlock tokens from bridge vault (requires proof)
|
||||
operationId: bridgeUnlock
|
||||
tags:
|
||||
- Bridge
|
||||
security:
|
||||
- oauth2:
|
||||
- bridge:write
|
||||
x-roles:
|
||||
- BRIDGE_OPERATOR
|
||||
x-idempotency: true
|
||||
parameters:
|
||||
- $ref: '../components/parameters.yaml#/components/parameters/IdempotencyKey'
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../components/schemas.yaml#/components/schemas/BridgeUnlockRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Tokens unlocked
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../components/schemas.yaml#/components/schemas/BridgeLock'
|
||||
'400':
|
||||
$ref: '../openapi.yaml#/components/responses/BadRequest'
|
||||
|
||||
/bridge/locks/{lockId}:
|
||||
get:
|
||||
summary: Get bridge lock status
|
||||
description: Get bridge lock status by ID
|
||||
operationId: getBridgeLock
|
||||
tags:
|
||||
- Bridge
|
||||
security:
|
||||
- oauth2:
|
||||
- bridge:read
|
||||
parameters:
|
||||
- $ref: '../components/parameters.yaml#/components/parameters/LockId'
|
||||
responses:
|
||||
'200':
|
||||
description: Bridge lock details
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../components/schemas.yaml#/components/schemas/BridgeLock'
|
||||
'404':
|
||||
$ref: '../openapi.yaml#/components/responses/NotFound'
|
||||
|
||||
/bridge/corridors:
|
||||
get:
|
||||
summary: Get supported corridors
|
||||
description: Get list of supported bridge corridors and verification modes
|
||||
operationId: getBridgeCorridors
|
||||
tags:
|
||||
- Bridge
|
||||
security:
|
||||
- oauth2:
|
||||
- bridge:read
|
||||
responses:
|
||||
'200':
|
||||
description: Supported corridors
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
corridors:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
targetChain:
|
||||
type: string
|
||||
chainId:
|
||||
type: string
|
||||
verificationMode:
|
||||
type: string
|
||||
enum: ["LIGHT_CLIENT", "MULTISIG", "ORACLE"]
|
||||
enabled:
|
||||
type: boolean
|
||||
|
||||
Reference in New Issue
Block a user