@colony2/c2j 0.0.99 → 0.0.102

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +10 -6
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -157,7 +157,7 @@ That does all of the following:
157
157
 
158
158
  - starts an embedded JobDB runtime
159
159
  - submits the job
160
- - resolves the named recipe in the target cell, falling back to the shared recipe if absent
160
+ - resolves the shared build recipe directly from `colony-2/recipes`
161
161
  - immediately executes it against the target cell
162
162
 
163
163
  See [submitting jobs](#submitting-jobs) for the hosted recipe names and [advanced recipe selection](#advanced-recipe-selection) for custom local files.
@@ -256,6 +256,10 @@ c2j init --with-op-skills
256
256
 
257
257
  The generated template can derive values from the Go module in the current repo when `base: go` is appropriate. `--stdout` prints only the config and does not install skills.
258
258
 
259
+ `base: go` reads `go.mod` directly, with no Go installation or network access required. It derives the current repository from the `module` directive and discovers only direct dependencies: `require` entries without `// indirect`. Discovery uses declared module paths, not replacement destinations, and does not resolve versions or combine `go.work` modules. Keep `go.mod` current with `go mod tidy` during development.
260
+
261
+ To retain the previous command-based discovery, use `base: gocmd`. It requires Go on `PATH` and runs `go list -m` for the current module and `go list -m all` for dependencies, including transitive dependencies. Both bases retain the same repository normalization, pattern inference, filtering, and explicit config overrides. Automatic Go project detection and `c2j init` default to `base: go`.
262
+
259
263
  Bundled skill install controls:
260
264
 
261
265
  ```bash
@@ -298,13 +302,13 @@ Submit a build job:
298
302
  c2j submit "Implement the new endpoint" --embed
299
303
  ```
300
304
 
301
- Submissions use the name `build` through the existing recipe resolution system. At execution time, c2j first looks for `.c2/recipes/build.yaml` in the **target cell's repository**, at its configured ref. This also applies to `--cell`; the submitting project's recipes do not override another target cell's recipes. As with other named recipes, uncommitted files are not used.
302
-
303
- If that recipe file is absent, c2j resolves the shared recipe instead:
305
+ With no recipe option, c2j uses the shared build recipe directly:
304
306
 
305
307
  - `git+https://github.com/colony-2/recipes.git//build.yaml@main`
306
308
 
307
- The shared repository must provide `build.yaml` at its root on `main`. This recipe is not bundled with c2j; until published, jobs needing the fallback cannot execute. Missing refs, authentication/network failures, and invalid recipes remain errors rather than triggering fallback. Resolution is pinned and cached by the existing job execution machinery. A shared recipe still operates on the target cell's worktree.
309
+ Bootstrap does not look for a recipe in the target repository. This allows the shared recipe to configure credentials before accessing a private target. A local `.c2/recipes/build.yaml` does not override the default. The shared recipe still operates on the target cell's worktree, and its source is pinned and cached by the job execution machinery.
310
+
311
+ Use `--advanced-recipe build` to explicitly select `.c2/recipes/build.yaml` in the target cell's repository at its configured Git ref. Bare names keep the existing target-cell lookup behavior (including the missing-file shared fallback for `build`); uncommitted files are not used. With `--cell`, lookup uses the target cell, not the submitting project's recipes.
308
312
 
309
313
  Every submission requires a non-empty prompt, passed as `inputs.prompt`. Omit the argument in a terminal to enter it interactively:
310
314
 
@@ -322,7 +326,7 @@ Build submissions include `type: build` alongside the prompt:
322
326
  {"prompt": "Implement the new endpoint", "type": "build"}
323
327
  ```
324
328
 
325
- `type` is fixed to `"build"` for build submissions; it does not select a recipe. A matching `type` in `--inputs-json` or `--inputs-file` is accepted; a conflicting or non-string value is rejected before submission. The same contract applies to target-cell recipes and shared fallbacks, including explicit selection of the name `build`.
329
+ `type` is fixed to `"build"` for build submissions; it does not select a recipe. A matching `type` in `--inputs-json` or `--inputs-file` is accepted; a conflicting or non-string value is rejected before submission. The same contract applies to the default shared build and explicit selection of the name `build`.
326
330
 
327
331
  The build recipe must declare these inputs and bind them for recipe logic:
328
332
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@colony2/c2j",
3
- "version": "0.0.99",
3
+ "version": "0.0.102",
4
4
  "description": "c2j job system",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://github.com/colony-2/c2j",