2026-04-09 21:30:23 -05:00
|
|
|
# Jibo.Cloud.DotNet
|
|
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
## Summary
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
`Jibo.Cloud.DotNet` is the stable hosted implementation of the OpenJibo cloud.
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
This is the production-oriented path for restoring device connectivity and creating a foundation for future runtime, AI, and OTA work.
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
## Architecture
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
The first implementation is a modular monolith:
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
```text
|
|
|
|
|
Api -> Application -> Domain -> Infrastructure
|
2026-04-09 21:30:23 -05:00
|
|
|
```
|
|
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
This keeps deployment simple while preserving clean boundaries.
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
## Azure Direction
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
The target Azure footprint is:
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
- Azure App Service for HTTP and WebSocket traffic
|
|
|
|
|
- Azure SQL for relational persistence
|
|
|
|
|
- Azure Blob Storage for uploads and update artifacts
|
|
|
|
|
- Azure Key Vault for secrets and certificates
|
|
|
|
|
- Application Insights for observability
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
Azure SQL is the primary system of record for:
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
- accounts
|
|
|
|
|
- devices
|
|
|
|
|
- sessions
|
|
|
|
|
- update metadata
|
|
|
|
|
- host mappings
|
|
|
|
|
- bootstrap and provisioning records
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
## Compatibility Goal
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
The first compatibility milestone is `core revive`.
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
That means the .NET cloud should handle:
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
- token and session issuance
|
|
|
|
|
- account and robot identity flows needed for startup
|
|
|
|
|
- core `X-Amz-Target` dispatch
|
|
|
|
|
- listen and proactive WebSocket paths
|
|
|
|
|
- basic media and update metadata responses
|
|
|
|
|
- handoff into normalized `TurnContext` and `ResponsePlan` contracts
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
## Relationship To The Node Prototype
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
The Node server remains the discovery harness and fixture source.
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
The .NET implementation should:
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
- copy observed behavior where needed
|
|
|
|
|
- use fixtures captured from Node and real robots
|
|
|
|
|
- avoid speculative protocol design
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
## Current State
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
This folder now contains the first hosted scaffold, not just a README.
|
2026-04-09 21:30:23 -05:00
|
|
|
|
2026-04-11 07:12:57 -05:00
|
|
|
The intent is to grow from a runnable dev monolith into the real Azure deployment target without abandoning the existing abstractions work.
|