chain-studio/pubspec.yaml
flemming-it 2f076ccf29
Some checks failed
Security / Security check (push) Failing after 1s
feat(store,doctor): surface the hub's trust + exposure data (0.77.0)
The trust-gate dialog replaces its generic 'no per-entry status yet
(alpha)' note with the hub's classified verification statement —
pinned store key / trusted publishers (green), installs without
signature checking (amber), install would be refused (red), bridge
entry (neutral) — via one shared describeInstallVerification mapping.
Against a pre-0.23 hub the field is empty and the old honest wording
stays (pinned by test).

Information architecture: policy-off is a GLOBAL fact, so it appears
as ONE ChainInlineHelp notice above the store grid instead of a
warning pill on every card (card noise); only 'blocked' — a genuine
per-source anomaly — earns a card pill. Doctor's host services show
the hub-classified network reach per endpoint (local only / private
network / publicly reachable with a protect-it hint / reach unknown).

Verified end-to-end against the live dev hub (guide harness): the
wire field arrives, the store page shows exactly one policy notice
and quiet cards; trust-gate variants captured via the dialog
harness. Suite 123 green.

Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
2026-07-21 13:14:13 +02:00

95 lines
3.3 KiB
YAML

name: chain_studio
description: "Ch∆In Studio — desktop GUI for the Ch∆In hub"
publish_to: 'none'
version: 0.77.0
environment:
sdk: ^3.11.0-200.1.beta
dependencies:
flutter:
sdk: flutter
flutter_localizations:
sdk: flutter
cupertino_icons: ^1.0.8
intl: any
# `@visibleForTesting` annotation on FaiLog's test seam.
meta: any
# Sibling package; will move to Forgejo path once published.
chain_client_sdk:
path: ../fai_chain_client_sdk_dart
shared_preferences: ^2.5.5
# Inline README rendering inside the Store detail sheet.
# `flutter_markdown` is discontinued; `flutter_markdown_plus`
# is the actively-maintained drop-in fork (same
# `MarkdownStyleSheet` / `Markdown` / `MarkdownBody` API).
flutter_markdown_plus: ^1.0.3
# Today-Hero pipeline reads accepted stories from
# ~/.fai/today/active.yaml — see docs/today-pipeline.md.
yaml: ^3.1.2
path: ^1.9.0
# System-native file picker — used by the Flows run-flow
# form for `bytes`-shaped inputs (extract takes a PDF, the
# operator clicks "Choose file" and macOS / Linux / Windows
# routes through the OS dialog so sandboxed Studio still
# gets read access to the chosen file).
file_picker: ^11.0.0
# Swappable flow editor — lives in its own repo so it can
# be replaced without touching the rest of Studio. Pin to a
# commit (or branch) here; rebuild Studio to pick up
# editor-side changes.
chain_studio_flow_editor:
git:
url: https://git.flemming.ai/fai/chain-studio-flow-editor
# Tag-pinned so a CI (override-free) build is reproducible and an
# editor push can't retroactively change what a Studio release
# builds against. Bump this in lockstep with the editor tag.
ref: v0.24.1
dev_dependencies:
flutter_test:
sdk: flutter
integration_test:
sdk: flutter
flutter_lints: ^6.0.0
# Local-development override: while editing the swappable flow
# editor alongside Studio, point at the sibling working tree so
# changes are picked up on the next Studio reload without push
# + `pub upgrade`. Comment the block out before tagging a Studio
# release so the committed Git ref is what builds on Forgejo CI.
dependency_overrides:
chain_studio_flow_editor:
path: ../fai_chain_studio_flow_editor
flutter:
uses-material-design: true
generate: true
# Bundled operator-facing documentation rendered inline by
# the Welcome page. Each doc has a `_de.md` sibling for the
# German locale; the loader picks the right pair at runtime.
# Air-gap-friendly — no network calls to read these.
assets:
- assets/docs/
# Bundled fonts — Inter (UI) + JetBrains Mono (technical
# strings). Shipped as assets rather than fetched at runtime
# via google_fonts so the app works fully offline / air-gapped
# (KRITIS) and never shows a font-swap flash on first paint.
fonts:
- family: Inter
fonts:
- asset: assets/fonts/Inter-Regular.ttf
weight: 400
- asset: assets/fonts/Inter-Medium.ttf
weight: 500
- asset: assets/fonts/Inter-SemiBold.ttf
weight: 600
- asset: assets/fonts/Inter-Bold.ttf
weight: 700
- family: JetBrains Mono
fonts:
- asset: assets/fonts/JetBrainsMono-Regular.ttf
weight: 400
- asset: assets/fonts/JetBrainsMono-Medium.ttf
weight: 500