CI: automated incremental build + publish for @agentos-software registry packages
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 38/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- cmake, github-actions, rust, typescript, wasm
- Área
- build-system, ci-cd, devops, release
Línea de trabajo
Empieza con registry/Makefile y la detección de cambios existente por paquete mediante .last-publish-hash; después, inspecciona scripts/publish/src/lib/packages.ts y las exclusiones del workflow secure-exec. Sigue los pasos de sysroot, wasi-sdk, LLVM runtime, CMake, Rust wasm y agent-packing antes de diseñar el workflow. Se considera terminado cuando los cambios bajo registry/ o en la toolchain nativa desencadenan builds incrementales y la publicación para ambos árboles de paquetes, con artefactos de toolchain almacenados en caché y un dist-tag distinto de latest.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Problem
The @agentos-software/* registry packages have no automated CI build/publish:
- Commands live in
registry/software/*, agents inregistry/agent/*. - They are deliberately excluded from the secure-exec preview publish workflow (
scripts/publish/src/lib/packages.ts→SECURE_EXEC_WORKSPACE_PACKAGESskips everything under@agentos-software/*except@agentos-software/manifest). - The only publish path is a manual
registry/Makefilemake publishrun from a dev machine.
The manual/local path is impractical for contributors: publishing a registry update requires a full local wasm toolchain build:
make sysroot→patch-wasi-libc.sh+build-llvm-runtimes.sh(patched wasi-libc with networking, e.g.netdb.h),- then the heavy C builds (curl, sqlite3, duckdb — duckdb alone is 20+ min via CMake),
- then Rust wasm (
wasm32-wasip1, ~139 commands) + agent packing.
Realistically 30–60+ min of from-source LLVM/wasi-libc/duckdb builds, fallible, and it pins the machine. So registry updates don't happen reliably.
Ask
A CI workflow that builds and publishes the registry packages automatically on change.
Requirements
- Incremental — some packages take a long time to build (duckdb, curl, the patched sysroot). Reuse the existing per-package
.last-publish-hashchange-detection so only changed packages rebuild/republish, and cache the wasm toolchain (patched wasi-libc sysroot, wasi-sdk, LLVM runtimes) across runs. The registry should be updatable incrementally rather than all-or-nothing. - Non-
latestdist-tag — never move thelatestpointer (consistent with the manual path'sDIST_TAG=dev). - Cover both
registry/software/*(commands + meta) andregistry/agent/*(agents). - Trigger on changes under
registry/(and the native toolchain).
Context
Surfaced while migrating the registry to the { packageDir } + agentos-package.json model (secure-exec #150 / agent-os #1561): every @agentos-software/* package needs republishing with the new shape, but there is no non-manual way to do it.
- Lenguaje dominante
- TypeScript
- Estrellas
- 1k
- Forks
- 53
- Merge medio
- 2 h 54 min
- PR fusionados (30 d)
- 5
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de rivet-dev/dynamic-apps
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
rivet-dev/dynamic-apps#305 ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 72/100
rivet-dev/dynamic-apps#306 ·
-
Build cache ignores maxResponseBytes, potentially reusing an outdated response limitPosiblemente ocupada @Utkarshpandey0001 la tomó hace 45 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 78/100
rivet-dev/dynamic-apps#297 ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 58/100
rivet-dev/dynamic-apps#280 · 2 comentarios ·
-
Make agentOS runtime classifier content-based (match Linux exec semantics), not extension-basedPosiblemente ocupada @mittal-parth la tomó hace 50 días. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
rivet-dev/dynamic-apps#275 ·
Todos los issues de rivet-dev/dynamic-apps
Issues similares
-
Phone app shows Unknown for a remote machine whose key changedPosiblemente ocupada @janicduplessis la tomó hoy. Abiertoarea: mobile priority: P3 type: bug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
appandflow/stim#5006 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Area - Local to Cloud Bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
microsoft/vscode-mssql#23209 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
code-yeongyu/senpi#5713 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
A-linter
Dificultad 2/5 1-3 horas Aptitud para principiantes 73/100
oxc-project/oxc#28783 ·
Los mantenedores suelen responder en 1 día
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Dificultad 1/5 Menos de una hora Aptitud para principiantes 84/100
lingdojo/kana-dojo#33553 · 1 comentario · 5 reacciones ·
Los mantenedores suelen responder en 1 día