Skip to content

Commit 47f3e88

Browse files
committed
Fix CI + Docker: clone sibling repos to correct paths
CI workflows (ci-master.yml, proof.yml): add clone steps for all three OBLIGATORY sibling repos (rustynum, crewai-rust, n8n-rs) to every job. Dockerfiles: fix clone paths from vendor/ to sibling directories. Cargo.toml uses path = "../rustynum/...", "../crewai-rust", "../n8n-rs/..." which resolve to /<name> from WORKDIR /build. Previous clone to vendor/rustynum caused "failed to read /rustynum/rustynum-arrow/Cargo.toml". Files changed: - ci-master.yml: miri job (build/test/lint already had clone steps) - proof.yml: all 6 jobs (compile-check, foundation, reasoning-ladder, tactics, level-a-gaps, unit-tests) - Dockerfile: rustynum clone vendor/ → /rustynum - Dockerfile.release: add crewai-rust + n8n-rs, fix rustynum path - Dockerfile.full: vendor/ → / for all 3 repos - Dockerfile.crewai: vendor/ → /, add n8n-rs - Dockerfile.n8n: vendor/ → /, add crewai-rust - Dockerfile.unified: vendor/ → /build/ (WORKDIR /build/ladybug) https://claude.ai/code/session_01Qz8uxFaoe1nmT4V3kK3p8p
1 parent ad44954 commit 47f3e88

8 files changed

Lines changed: 106 additions & 24 deletions

File tree

.github/workflows/ci-master.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,12 @@ jobs:
3232
- name: Init vendor submodules
3333
run: git submodule update --init vendor/rustynum
3434

35+
- name: Clone sibling repos (OBLIGATORY deps)
36+
run: |
37+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum.git ../rustynum
38+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust.git ../crewai-rust
39+
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs.git ../n8n-rs
40+
3541
- uses: dtolnay/rust-toolchain@master
3642
with:
3743
toolchain: "1.93.0"
@@ -58,6 +64,12 @@ jobs:
5864
- name: Init vendor submodules
5965
run: git submodule update --init vendor/rustynum
6066

67+
- name: Clone sibling repos (OBLIGATORY deps)
68+
run: |
69+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum.git ../rustynum
70+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust.git ../crewai-rust
71+
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs.git ../n8n-rs
72+
6173
- uses: dtolnay/rust-toolchain@master
6274
with:
6375
toolchain: "1.93.0"
@@ -89,6 +101,12 @@ jobs:
89101
- name: Init vendor submodules
90102
run: git submodule update --init vendor/rustynum
91103

104+
- name: Clone sibling repos (OBLIGATORY deps)
105+
run: |
106+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum.git ../rustynum
107+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust.git ../crewai-rust
108+
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs.git ../n8n-rs
109+
92110
- uses: dtolnay/rust-toolchain@master
93111
with:
94112
toolchain: "1.93.0"
@@ -116,6 +134,12 @@ jobs:
116134
- name: Init vendor submodules
117135
run: git submodule update --init vendor/rustynum
118136

137+
- name: Clone sibling repos (OBLIGATORY deps)
138+
run: |
139+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum.git ../rustynum
140+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust.git ../crewai-rust
141+
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs.git ../n8n-rs
142+
119143
- uses: dtolnay/rust-toolchain@nightly
120144
with:
121145
components: miri

.github/workflows/proof.yml

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,13 @@ jobs:
5858

5959
- name: Init vendor submodules
6060
run: git submodule update --init vendor/rustynum
61+
62+
- name: Clone sibling repos (OBLIGATORY deps)
63+
run: |
64+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum.git ../rustynum
65+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust.git ../crewai-rust
66+
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs.git ../n8n-rs
67+
6168
- uses: dtolnay/rust-toolchain@master
6269
with:
6370
toolchain: "1.93.0"
@@ -77,6 +84,13 @@ jobs:
7784

7885
- name: Init vendor submodules
7986
run: git submodule update --init vendor/rustynum
87+
88+
- name: Clone sibling repos (OBLIGATORY deps)
89+
run: |
90+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum.git ../rustynum
91+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust.git ../crewai-rust
92+
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs.git ../n8n-rs
93+
8094
- uses: dtolnay/rust-toolchain@master
8195
with:
8296
toolchain: "1.93.0"
@@ -96,6 +110,13 @@ jobs:
96110

97111
- name: Init vendor submodules
98112
run: git submodule update --init vendor/rustynum
113+
114+
- name: Clone sibling repos (OBLIGATORY deps)
115+
run: |
116+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum.git ../rustynum
117+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust.git ../crewai-rust
118+
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs.git ../n8n-rs
119+
99120
- uses: dtolnay/rust-toolchain@master
100121
with:
101122
toolchain: "1.93.0"
@@ -115,6 +136,13 @@ jobs:
115136

116137
- name: Init vendor submodules
117138
run: git submodule update --init vendor/rustynum
139+
140+
- name: Clone sibling repos (OBLIGATORY deps)
141+
run: |
142+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum.git ../rustynum
143+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust.git ../crewai-rust
144+
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs.git ../n8n-rs
145+
118146
- uses: dtolnay/rust-toolchain@master
119147
with:
120148
toolchain: "1.93.0"
@@ -134,6 +162,13 @@ jobs:
134162

135163
- name: Init vendor submodules
136164
run: git submodule update --init vendor/rustynum
165+
166+
- name: Clone sibling repos (OBLIGATORY deps)
167+
run: |
168+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum.git ../rustynum
169+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust.git ../crewai-rust
170+
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs.git ../n8n-rs
171+
137172
- uses: dtolnay/rust-toolchain@master
138173
with:
139174
toolchain: "1.93.0"
@@ -153,6 +188,13 @@ jobs:
153188

154189
- name: Init vendor submodules
155190
run: git submodule update --init vendor/rustynum
191+
192+
- name: Clone sibling repos (OBLIGATORY deps)
193+
run: |
194+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum.git ../rustynum
195+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust.git ../crewai-rust
196+
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs.git ../n8n-rs
197+
156198
- uses: dtolnay/rust-toolchain@master
157199
with:
158200
toolchain: "1.93.0"

Dockerfile

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,17 +40,16 @@ RUN mkdir -p src/bin && \
4040
# --- Full source ---
4141
COPY . .
4242

43-
# --- Vendor submodules (clone if not present in build context) ---
44-
# Cargo validates path dependencies at resolution time regardless of features,
45-
# so vendor repos must exist even when their features aren't enabled.
46-
RUN if [ ! -f vendor/rustynum/rustynum-rs/Cargo.toml ]; then \
47-
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum vendor/rustynum; \
43+
# --- Clone sibling repos (OBLIGATORY deps) ---
44+
# Cargo.toml uses path = "../rustynum/...", "../crewai-rust", "../n8n-rs/..."
45+
# From WORKDIR /build, "../" resolves to "/", so repos go to /<name>.
46+
# Cargo validates ALL path deps at resolution time regardless of features.
47+
RUN if [ ! -f /rustynum/rustynum-rs/Cargo.toml ]; then \
48+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum /rustynum; \
4849
fi
49-
# crewai-rust: path = "../crewai-rust" → resolves to /crewai-rust from /build
5050
RUN if [ ! -f /crewai-rust/Cargo.toml ]; then \
5151
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust /crewai-rust; \
5252
fi
53-
# n8n-rs: path = "../n8n-rs/n8n-rust/crates/*" → resolves to /n8n-rs from /build
5453
RUN if [ ! -f /n8n-rs/n8n-rust/crates/n8n-arrow/Cargo.toml ]; then \
5554
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs /n8n-rs; \
5655
fi

Dockerfile.crewai

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,12 @@ RUN apt-get update && apt-get install -y \
2323

2424
WORKDIR /build
2525

26-
# --- Clone vendor repos ---
27-
RUN git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust vendor/crewai-rust && \
28-
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum vendor/rustynum
26+
# --- Clone sibling repos (OBLIGATORY deps) ---
27+
# Cargo.toml uses path = "../rustynum/...", "../crewai-rust", "../n8n-rs/..."
28+
# From WORKDIR /build, "../" resolves to "/", so repos go to /<name>.
29+
RUN git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust /crewai-rust && \
30+
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs /n8n-rs && \
31+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum /rustynum
2932

3033
# --- Copy source ---
3134
COPY . .

Dockerfile.full

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,12 @@ RUN apt-get update && apt-get install -y \
2222

2323
WORKDIR /build
2424

25-
# --- Clone all vendor repos ---
26-
RUN git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs vendor/n8n-rs && \
27-
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust vendor/crewai-rust && \
28-
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum vendor/rustynum
25+
# --- Clone sibling repos (OBLIGATORY deps) ---
26+
# Cargo.toml uses path = "../rustynum/...", "../crewai-rust", "../n8n-rs/..."
27+
# From WORKDIR /build, "../" resolves to "/", so repos go to /<name>.
28+
RUN git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs /n8n-rs && \
29+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust /crewai-rust && \
30+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum /rustynum
2931

3032
# --- Copy source ---
3133
COPY . .

Dockerfile.n8n

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,12 @@ RUN apt-get update && apt-get install -y \
2323

2424
WORKDIR /build
2525

26-
# --- Clone vendor repos ---
27-
RUN git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs vendor/n8n-rs && \
28-
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum vendor/rustynum
26+
# --- Clone sibling repos (OBLIGATORY deps) ---
27+
# Cargo.toml uses path = "../rustynum/...", "../crewai-rust", "../n8n-rs/..."
28+
# From WORKDIR /build, "../" resolves to "/", so repos go to /<name>.
29+
RUN git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs /n8n-rs && \
30+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust /crewai-rust && \
31+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum /rustynum
2932

3033
# --- Copy source ---
3134
COPY . .

Dockerfile.release

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,9 +54,17 @@ FROM deps AS builder
5454
# Copy full source
5555
COPY . .
5656

57-
# --- Vendor submodules (clone if not present in build context) ---
58-
RUN if [ ! -f vendor/rustynum/rustynum-rs/Cargo.toml ]; then \
59-
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum vendor/rustynum; \
57+
# --- Clone sibling repos (OBLIGATORY deps) ---
58+
# Cargo.toml uses path = "../rustynum/...", "../crewai-rust", "../n8n-rs/..."
59+
# From WORKDIR /build, "../" resolves to "/", so repos go to /<name>.
60+
RUN if [ ! -f /rustynum/rustynum-rs/Cargo.toml ]; then \
61+
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum /rustynum; \
62+
fi
63+
RUN if [ ! -f /crewai-rust/Cargo.toml ]; then \
64+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust /crewai-rust; \
65+
fi
66+
RUN if [ ! -f /n8n-rs/n8n-rust/crates/n8n-arrow/Cargo.toml ]; then \
67+
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs /n8n-rs; \
6068
fi
6169

6270
# AVX-512 binary

Dockerfile.unified

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,11 @@ RUN apt-get update && apt-get install -y \
3939
WORKDIR /build/ladybug
4040
COPY . .
4141

42-
# --- Vendor submodules (clone if not present in build context) ---
43-
RUN if [ ! -f vendor/rustynum/rustynum-rs/Cargo.toml ]; then \
44-
git clone --depth 1 https://github.com/AdaWorldAPI/rustynum vendor/rustynum; \
45-
fi
42+
# --- Clone sibling repos (OBLIGATORY deps) ---
43+
# WORKDIR is /build/ladybug, so "../" = /build/
44+
RUN git clone --depth 1 https://github.com/AdaWorldAPI/rustynum /build/rustynum && \
45+
git clone --depth 1 https://github.com/AdaWorldAPI/crewai-rust /build/crewai-rust && \
46+
git clone --depth 1 https://github.com/AdaWorldAPI/n8n-rs /build/n8n-rs
4647

4748
ARG LB_FEATURES="simd,parallel,codebook,hologram,quantum"
4849

0 commit comments

Comments
 (0)