feat: SolaceNet gateway rails, IRU marketplace hardening, and docs

- Gateway adapter registry, rails routes, optional SOLACENET_GATEWAY_RAILS_ENFORCE; HTTP integration tests.
- IRU marketplace: rate limits, public routes, notifications/SMTP env docs; marketplace UI constants and flows.
- Quantum proxy legacy protocol types; debank/tezos/GSDS touch-ups; .env.example operator notes.
- SolaceNet doc set (gaps, runbooks, telecom schema example).

Tests: npm run test:iru-marketplace, npm run test:gateway (pass).
Note: full-repo tsc still reports unrelated legacy errors outside this change set.
Made-with: Cursor
This commit is contained in:
defiQUG
2026-04-07 23:21:55 -07:00
parent 1190476b0a
commit 6ebf71dda8
75 changed files with 4104 additions and 338 deletions

View File

@@ -37,6 +37,17 @@ export interface IRUSubscription {
activationDate?: Date;
}
/** Public GET /inquiries/:id (no organization, contact, qualification, risk, or notes) */
export interface IRUPublicInquiryStatus {
inquiryId: string;
status: string;
offering: { name: string; capacityTier: number };
submittedAt: string;
acknowledgedAt: string | null;
reviewedAt: string | null;
completedAt: string | null;
}
export class IRUClient {
private config: IRUClientConfig;
private baseUrl: string;
@@ -98,10 +109,10 @@ export class IRUClient {
}
/**
* Get inquiry status
* Get public inquiry status (workflow + offering summary only).
*/
async getInquiryStatus(inquiryId: string): Promise<any> {
const response = await this.request<{ success: boolean; data: any }>(
async getInquiryStatus(inquiryId: string): Promise<IRUPublicInquiryStatus> {
const response = await this.request<{ success: boolean; data: IRUPublicInquiryStatus }>(
`/api/v1/iru/marketplace/inquiries/${inquiryId}`
);