app-publishing ยท diff

v2.0.0 to git:20260907.863840e

50 added, 149 removed. Audit A to A.

---
name: app-publishing
- version: 2.0.0
- description: >
- Publish an implemented, smoke-tested Robium application as one coherent
- public project: write or revise its product-lab article, prepare real-run
- media and explanatory assets, apply the Robium editorial cobalt theme, and
- compose catalog, overview, live, guide, and social surfaces from
- repository-owned facts. Use when: 'publish this finished application',
- 'make this article sound human', 'unify the demo and guide', 'create article
- assets', 'apply the Robium writing style', or 'turn this tested app into a
- showcase'. Load only after the application smoke passes. Not for: planning
- or coding robot behavior (architect), generic site design, nor gateway,
- orchestrator, or cloud runtime mechanics (live-demo).
+ description: Publish a tested Robium application as a coherent project page, article, and media set.
---
- # app-publishing
-
- Turn a tested reference application into a public project that reads and looks
- like Robium without separating its story from its source. The app manifest
- owns runtime facts. Its portable case study owns the article and media. The
- website composes those sources into overview, live, guide, catalog, and social
- surfaces.
-
- ## When to use this skill
-
- - Publishing or refreshing a finished application on robium.ai.
- - Writing or editing an app-backed article in the Robium product-lab voice.
- - Producing a real-run hero, system diagram, social card, or optional
- conceptual illustration for an article.
- - Replacing one-off public pages with the shared project identity and visual
- system.
- - Cross-references: use `testing` before publication, `live-demo` for hosted
- session mechanics, and `skill-author` when changing this skill itself.
-
- ## Key directives
-
- - **Delegation posture: embed + links.** Embed Robium's editorial, visual,
- media, and repository-to-website contract here. Link to upstream project and
- embed patterns where they clarify delivery.
- - **Sound like a person who built the thing.** <!-- id: publishing-human-product-lab-voice --> Use direct sentences, specific
- observations, and restrained judgment. Do not use em dashes, inflated
- certainty, generic AI transitions, or repeated conclusions. See
- `references/editorial-system.md`.
- - **One app, one identity, several surfaces.** <!-- id: one-app-one-public-identity --> Overview, live workspace,
- guide, cards, metadata, and source links share the app ID, project header,
- typography, color language, and status vocabulary.
- - **Real runs establish what happened.** <!-- id: publishing-real-runs-ground-claims --> State the conditions and result
- plainly. Do not call every result proof or evidence. Generated art may
- explain a concept, but it must never resemble or replace application output.
- - **Facts stay with their owner.** <!-- id: publishing-facts-stay-with-owner --> Runtime and capability truth comes from
- `robium-app.yaml`. Article framing and media come from
- `docs/case-study.md`. Current public availability comes from the website.
- Do not create a second all-purpose page manifest.
- - **A structure is a checklist, not a voice.** <!-- id: publishing-spine-not-template --> Every article covers outcome,
- decision, system, run path, result, Robium's contribution, and limits. Its
- opening, section names, pacing, and emphasis should fit the application.
-
- ## Quick start
-
- 1. Confirm the normal app smoke is green. Confirm hosted `make demo-smoke` when
- the article discusses a hosted path.
- 2. Read the app manifest, README, architecture brief, case study, and current
- run artifacts before changing copy.
- 3. Draft against `references/article-starter.md`, then edit with
- `references/editorial-system.md`. Keep detailed troubleshooting and command
- catalogs in the README.
- 4. Prepare the standard media set with `references/asset-workflow.md`: one
- real-result hero, one system diagram, one 1200 by 630 social card, useful
- captions, and optional short motion.
- 5. Apply the tokens and component rules in `references/visual-system.md`.
- 6. Validate the application metadata and build the website against the current
- sibling apps checkout.
- 7. Inspect overview, guide, and live routes on desktop and mobile. Deployment,
- paid capacity, image publication, and production changes remain separate
- explicit actions.
-
- ## Decision guidance
-
- **Choose the public surface by visitor intent.**
-
- | Visitor intent | Surface | First viewport |
- | --- | --- | --- |
- | Understand the app | Overview | Outcome, real run, availability, local and live paths |
- | Try it | Live | Session state, controls, viewer, or readable unavailable state |
- | Learn or reproduce it | Guide | Natural headline, short deck, real result, useful narrative |
- | Compare projects | Card | Name, outcome, maturity, requirements, availability |
-
- **Choose the asset role before creating it.** Real-run media shows what the
- application did. Explanatory diagrams show how it works. Identity assets make
- the project recognizable. If an image could be mistaken for application
- output, do not generate it. Use a real capture instead.
-
- **Choose shared code vs an adapter.** Project identity, tabs, typography,
- availability, session state, boot log, stop/restart behavior, article prose,
- and responsive framing belong in shared components. A special robot viewer or
- result panel belongs in a small app adapter. Promote a pattern after a second
- consumer exists.
+ # App publishing
- **Choose metadata ownership.** See `references/publication-contract.md`. A
- field that changes with the application belongs with the app. A field that
- changes with editorial framing belongs in case-study frontmatter. Production
- enablement belongs to the site publication registry.
+ Let the application and its real runs own the facts; publishing gives those
+ facts one clear public identity.
- **Choose article depth.** Explain the decisions a reader cannot infer from the
- README. Keep one tested quick start. Link to the README for command matrices,
- setup variants, and troubleshooting. Remove a section if it only repeats the
- deck, a prior section, or the conclusion.
+ ## Start from recorded reality
- ## Platform gotchas
+ - Publish only after the application's normal smoke passes. If the story
+ presents a hosted path, its hosted smoke must pass too.
+ - Read the app manifest, README, architecture record, case study, and run
+ artifacts before changing copy or visuals.
+ - Keep runtime and capability facts in `robium-app.yaml`, article framing and
+ media in `docs/case-study.md`, and current availability in the website.
+ - Read [publication-contract.md](references/publication-contract.md) when
+ adding metadata, joining app and article records, or deciding which
+ repository owns a field.
- - **Committed fallbacks can hide stale source.** Build with `ROBIUM_APPS_DIR`
- pointed at the current apps repo before accepting a publication change.
- - **Hosted capability is not current availability.** A hosted-capable app may
- still have paid capacity paused. The site registry owns that state.
- - **Never allocate on catalog or overview load.** Start a paid session only
- after a visitor acts on the live route.
- - **Embedded apps keep their styling boundary.** Apply the shared system to
- the surrounding shell. Do not leak parent selectors into Gradio, Foxglove,
- Lichtblick, or other embedded viewers.
- - **A successful run has a scope.** Name the simulator or robot, model or
- policy, relevant hardware, scenario, and measurement window when they matter.
- Avoid broader claims than the recorded run supports.
+ ## Tell one human story
- ## Customization
+ - Lead with the result, tension, or decision that makes this app worth
+ reading. State run conditions next to the claims they qualify.
+ - Explain the decisions a reader cannot infer from the README. Keep one tested
+ path and leave exhaustive commands and troubleshooting in the app.
+ - Cover the outcome, decision, important system boundaries, tested path,
+ result, Robium's contribution, and limits without forcing identical public
+ headings.
+ - Read [editorial-system.md](references/editorial-system.md) for drafting or
+ revising prose, and [article-starter.md](references/article-starter.md) when
+ creating a portable case study.
- - Overview and guide use the light editorial surface. Live workspaces use the
- dark canvas while retaining cobalt, typography, status terms, and project
- navigation.
- - App-specific sections and diagrams are welcome. Repeated brand copy,
- duplicated runtime facts, and one-off theme colors are not.
- - Optional conceptual art uses the prompt recipe in
- `references/asset-workflow.md`. Save it under a new filename and caption it
- as an illustration. Omit it when a real capture or diagram communicates the
- idea more clearly.
- - Editorial consistency is guidance-led. Do not add a publication blocker for
- style conformance unless the maintainer explicitly changes that policy.
+ ## Use media honestly
- ## References
+ - Real-run media shows what happened. A diagram explains how the pieces
+ connect. Generated art may illustrate a concept but must not resemble or
+ replace application output.
+ - Preserve the conditions and source record behind captures. Use literal alt
+ text and captions that say whether a frame is simulated, recorded, or live.
+ - Read [asset-workflow.md](references/asset-workflow.md) when preparing the
+ hero, system diagram, social card, motion, or optional conceptual art.
- - `references/editorial-system.md`: product-lab voice, editing pass, headline,
- caption, and human-sounding examples.
- - `references/visual-system.md`: canonical colors, type, shape, page modes,
- and component language.
- - `references/asset-workflow.md`: real-run capture, diagram, social-card, and
- optional conceptual-art workflow.
- - `references/article-starter.md`: portable frontmatter and flexible article
- spine for a finished application.
- - `references/publication-contract.md`: source ownership and generated public
- surfaces.
- - Upstream: [Hugging Face Spaces overview](https://huggingface.co/docs/hub/spaces-overview)
- for repository-backed projects and [Gradio sharing and embedding](https://www.gradio.app/guides/sharing-your-app)
- for embedded interfaces, checked 2026-08-28. Sibling skills: `testing`,
- `live-demo`, and `skill-author`.
+ ## Keep the surfaces coherent
- ## Changelog
+ - Overview, Live, Guide, cards, metadata, and source links share one app ID,
+ project identity, navigation, status vocabulary, and visual language.
+ - Reuse the project shell and lifecycle components. Keep a special robot
+ viewer or result panel in a small adapter until a second consumer proves it
+ belongs in shared code.
+ - Read [visual-system.md](references/visual-system.md) when styling project
+ surfaces. Do not leak parent styles into embedded Gradio, Foxglove,
+ Lichtblick, or other tools.
+ - Route gateway, orchestrator, and cloud runtime mechanics to `live-demo`.
- <!-- One dated line per battle-tested change, added by skill-author hardening sessions. -->
+ ## Done
- - 2.0.0 (2026-08-28): expanded the publication contract into the Robium
- product-lab editorial and visual system, added real-run and generated-asset
- boundaries, and established a reusable article and media workflow.
- - 1.0.0 (2026-08-28): created from the robium.ai AppRecord/project-shell and
- shared ACT/PushT live-workspace implementation.
+ - Every public claim traces to repository-owned facts or a scoped real run.
+ - The application, article, metadata, and media join on one stable identity.
+ - Overview, Guide, and Live states work on desktop and mobile, including a
+ readable unavailable state.
+ - Deployment, paid capacity, production enablement, and external publication
+ remain separately authorized actions.