docs(openspec): move-image-cropper change — specs synced, change archived
image-cropper capability added; tools-app landing + config requirements updated (internal /cropper link, credentials-via-env carve-out).
This commit is contained in:
@@ -11,14 +11,12 @@ operator credentials directly to third parties.
|
||||
|
||||
### Requirement: Landing page links the YOUreka tools
|
||||
The app SHALL serve a landing page at `/` containing links to the Image
|
||||
Cropper (`https://smart-pxa.yrka.app`) and to the Fingerprint Agent page
|
||||
(`/fingerprint`).
|
||||
Cropper (`/cropper`) and to the Fingerprint Agent page (`/fingerprint`).
|
||||
|
||||
#### Scenario: Landing page renders both tool links
|
||||
- **WHEN** a user opens the app root URL
|
||||
- **THEN** the page shows a link to the Image Cropper pointing at
|
||||
`https://smart-pxa.yrka.app` and a link to `/fingerprint`
|
||||
|
||||
`/cropper` and a link to `/fingerprint`
|
||||
### Requirement: YOUreka Auth login establishes a cookie session
|
||||
The app SHALL authenticate operators through the YOUreka portal web-auth
|
||||
flow: create a web auth session at the portal with a local callback URL,
|
||||
@@ -121,9 +119,17 @@ session; the OTP SHALL NOT be accepted without one.
|
||||
### Requirement: Configuration is hardcoded
|
||||
The app SHALL hardcode all configuration in source: port `4173`, portal
|
||||
`https://portal.yrka.app`, PocketBase `https://pb.itcass.net`, a2loft
|
||||
`https://apis.a2loft.net`, and agent `http://127.0.0.1:9000`. There SHALL
|
||||
be no runtime configuration via environment variables or config files.
|
||||
`https://apis.a2loft.net`, and agent `http://127.0.0.1:9000`. There SHALL be
|
||||
no runtime configuration via environment variables or config files, with one
|
||||
exception: the Image Cropper's service credentials (Minio keys, Azure storage
|
||||
connection string, nodered credentials, cleanup-service key) SHALL come from
|
||||
environment variables and SHALL NOT be stored in source.
|
||||
|
||||
#### Scenario: No configuration required to run
|
||||
- **WHEN** the app is started with no environment variables or config files
|
||||
- **THEN** it serves on port 4173 with the hardcoded external endpoints
|
||||
|
||||
#### Scenario: Cropper credentials from the environment
|
||||
- **WHEN** the cropper credentials are supplied as environment variables
|
||||
- **THEN** the cropper routes use them without any change to the hardcoded
|
||||
URL/port configuration
|
||||
Reference in New Issue
Block a user