Commit Graph

22 Commits

Author SHA1 Message Date
3d96274d82 Merge pull request 'chore(ci): adopt .runtime-version push-mode cascade signal' (#1) from chore/runtime-version-file into main
All checks were successful
CI / validate (push) Successful in 3m12s
2026-05-07 10:12:49 +00:00
devops-engineer
aca6e8b0e0 chore(ci): adopt .runtime-version push-mode cascade signal
All checks were successful
CI / validate (pull_request) Successful in 10m11s
CI / validate (push) Successful in 10m36s
Background: post-2026-05-06 SCM is Gitea, not GitHub. Gitea 1.22.6 has
no repository_dispatch / workflow_dispatch trigger API (empirically
verified across 6 candidate paths in molecule-core#20 issuecomment-913).
The molecule-core/publish-runtime.yml cascade therefore cannot fire
templates via curl-dispatch — pivots to push-mode instead.

This PR is the consumer side of that pivot:

- .runtime-version file at repo root — single line, plain version
  string. Currently 0.1.129 (latest published as of 2026-05-07).
  publish-runtime overwrites this on each cascade.

- publish-image.yml gains a resolve-version job that reads the file
  and forwards the value to the reusable build workflow as the
  third-priority source in the resolution chain.

Sequencing context: this PR (and 8 sibling PRs to the other template
repos) MUST land before molecule-core#20 v2 is merged.

Refs molecule-core#14, molecule-core#20.
2026-05-07 03:08:22 -07:00
Hongming Wang
3bc1ba5aa7 fix: restore COPY/RUN lines in Dockerfile
Some checks failed
CI / validate (push) Failing after 0s
Previous commit's regex substitution dropped `COPY requirements.txt .`
and the initial `RUN pip install --no-cache-dir -r requirements.txt`
because of a bash-heredoc escape interaction (the \1 backref was
consumed before the python regex saw it, leaving a SOH char). This
restores both lines with the conditional version-pin upgrade after.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-27 07:50:15 -07:00
Hongming Wang
bb62194e2d feat: forward runtime_version + ARG RUNTIME_VERSION (cascade cache trap fix)
Closes the cache trap structurally for this template — same fix
already shipped in claude-code + hermes. publish-image.yml caller
forwards client_payload.runtime_version (set by cascade) to the
molecule-ci reusable workflow as runtime_version input. Reusable
workflow forwards it to docker build as a --build-arg. Dockerfile
declares ARG RUNTIME_VERSION before the pip install layer so cache
key is sensitive to the version. The pip install RUN does an extra
targeted upgrade to guarantee the exact version when ARG is set.

Pairs with molecule-ci PR #12 + molecule-core PR #2181.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-27 07:47:59 -07:00
Hongming Wang
557a3dc0a7 fix: add Adapter alias + qualify bare a2a_executor import
Two compounding bugs from the post-#87 extraction (same class as
fixed in langgraph, claude-code, gemini-cli, hermes today):

1. adapter.py never aliased DeepAgentsAdapter to `Adapter` —
   `molecule_runtime.adapters.get_adapter()` reads
   `getattr(mod, "Adapter")`. Without it preflight fails.

2. `from a2a_executor import LangGraphA2AExecutor` was bare —
   should be `from molecule_runtime.a2a_executor import ...`. The
   runtime's a2a_executor was just patched for a2a-sdk 1.x in
   molecule-core PR #2170; this template needs to reach it via the
   qualified path.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-27 05:51:33 -07:00
Hongming Wang
173c71238c
ci(publish-image): accept repository_dispatch from monorepo runtime publish (#7)
Adds 'repository_dispatch' trigger (event-type: runtime-published) so
molecule-core's publish-runtime.yml cascade job can fire this template's
image rebuild after a new molecule-ai-workspace-runtime PyPI release.

Without this, every runtime release waited for the next push: main /
manual workflow_dispatch to propagate to the published image. With it,
runtime fixes flow monorepo → PyPI → all 8 template images
automatically.

Part of the runtime CD chain. See molecule-core docs/workspace-runtime-package.md.

Co-authored-by: Hongming Wang <hongmingwangalt@gmail.com>
2026-04-26 12:42:41 -07:00
Hongming Wang
529a068010
Merge pull request #6 from Molecule-AI/chore/add-gitattributes-lf
chore: enforce LF line endings on .sh/.py/.yaml
2026-04-24 01:03:52 -07:00
rabbitblood
c0f6df37e3 chore: enforce LF line endings on .sh/.py/.yaml/Dockerfile
Pin LF on shell, Python, YAML, and Dockerfile so Windows Docker Desktop
checkouts don't introduce CRLF that breaks #!/bin/sh shebangs in the
container — that exact failure mode took down 14 workspaces during
#1933 fix v1 (exec /entrypoint.sh: no such file or directory cascade).

Same pattern as the .gitattributes already in
molecule-ai-workspace-template-claude-code, applied to the other 7
template repos.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 00:36:36 -07:00
Hongming Wang
6a9826033d
Merge pull request #5 from Molecule-AI/ci/add-publish-image-workflow
ci: publish image to GHCR via molecule-ci reusable workflow
2026-04-22 12:12:32 -07:00
Hongming Wang
76645022f2 ci: publish image to GHCR on main via molecule-ci reusable workflow
Adds a one-line caller for the publish-template-image.yml reusable
workflow in molecule-ci. On every push to main, this repo's
Dockerfile is now built and pushed to
ghcr.io/molecule-ai/workspace-template-deepagents:latest (plus a per-commit
sha tag). Closes the gap where template changes required a manual
tenant-side rebuild.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-22 12:11:30 -07:00
molecule-ai[bot]
f8c8503b70
fix(config): add models[] array for canvas model dropdown (#4)
Co-authored-by: Molecule AI Plugin-Dev <plugin-dev@agents.moleculesai.app>
2026-04-22 19:00:46 +00:00
molecule-ai[bot]
b73b483596
Merge pull request #2 from Molecule-AI/docs/sync-docs-to-main-deepagents
docs: add CLAUDE.md, known-issues.md, and runbooks/local-dev-setup.md to main
2026-04-21 11:14:59 +00:00
d189a83ee9 chore: re-trigger CI 2026-04-21 11:13:39 +00:00
77e3e7f452 chore: re-trigger CI with molecule-ci fix 2026-04-21 11:11:26 +00:00
88045a8bd6 chore: re-trigger CI after molecule-ci fix 2026-04-21 11:06:56 +00:00
542cbd4dbb ci: add .molecule-ci/scripts/ 2026-04-21 11:01:24 +00:00
053712c3b8 docs: add CLAUDE.md, known-issues.md, and runbooks/local-dev-setup.md 2026-04-21 10:55:07 +00:00
Hongming Wang
9c6aaa95f6
Merge pull request #1 from Molecule-AI/chore/credentials-gitignore
chore: gitignore credentials
2026-04-16 09:23:35 -07:00
rabbitblood
e7526628ce chore: gitignore credentials for molecule-ai-workspace-template-deepagents
Adds standard credential gitignore (.env / *.pem / .secrets/ / .auth_token).
Per-CEO directive 2026-04-16: every plugin and template repo should
gitignore credentials so self-hosters can't accidentally commit real
tokens to public repos.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 09:15:49 -07:00
Hongming Wang
278e16ad13 ci: add standard workspace template validation workflow 2026-04-16 04:43:19 -07:00
Hongming Wang
d7b18eba5a feat: add adapter code + Dockerfile for standalone deployment
Adapters extracted from molecule-monorepo/workspace-template.
Uses molecule-ai-workspace-runtime PyPI package for shared infrastructure.

- adapter.py — runtime-specific adapter class
- requirements.txt — runtime-specific deps + molecule-ai-workspace-runtime
- Dockerfile — FROM python:3.11-slim, pip install, COPY adapter, molecule-runtime entrypoint
- ADAPTER_MODULE=adapter tells the runtime to load this repo's Adapter class

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-16 04:27:22 -07:00
Hongming Wang
11eadd6f62 feat: initial template content (extracted from molecule-monorepo) 2026-04-16 03:05:44 -07:00