@biffo/cli 0.108.8 → 0.109.0

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.
@@ -2,6 +2,7 @@
2
2
  "name": "example-sibling",
3
3
  "core_project": "example-core-project",
4
4
  "path_prefix": "example-sibling",
5
- "description": "Rewritten by `biffo sibling create` (ADR-0007) with this sibling's real name, its paired core project's name, and its registered path prefix. The identity fields above are not meant to be hand-edited afterwards — path_prefix in particular must always match the entry this sibling was registered under in the core project's infra/siblings.auto.tfvars.json. `routes` below, however, IS yours to maintain.",
5
+ "template_version": "0.0.0",
6
+ "description": "Rewritten by `biffo sibling create` (ADR-0007) with this sibling's real name, its paired core project's name, its registered path prefix, and the core template version it was scaffolded from (template_version, issue #567 — visibility only, not consumed by any upgrade mechanism today). The identity fields above are not meant to be hand-edited afterwards — path_prefix in particular must always match the entry this sibling was registered under in the core project's infra/siblings.auto.tfvars.json. `routes` below, however, IS yours to maintain.",
6
7
  "routes": []
7
8
  }
package/dist/index.js CHANGED
@@ -5294,7 +5294,11 @@ async function pushSkeleton(git, skeletonRoot, cloneUrl, config, coreConfig, git
5294
5294
  try {
5295
5295
  writeSiblingTemplate(skeletonRoot, workDir, config, {
5296
5296
  coreProjectName: coreConfig.project.name,
5297
- pathPrefix: resolvePathPrefix(config)
5297
+ pathPrefix: resolvePathPrefix(config),
5298
+ // The core template's version at scaffold time (issue #567) — visibility
5299
+ // only, mirroring how `biffo init` stamps `biffo.core.json`. See the
5300
+ // `template_version` field doc on `SiblingMarker` (lib/sibling-teardown.ts).
5301
+ templateVersion: getLatestCoreVersion()
5298
5302
  });
5299
5303
  await git.init(workDir, "main");
5300
5304
  await git.addRemote(workDir, "origin", cloneUrl);
@@ -5318,6 +5322,8 @@ function writeSiblingTemplate(templateRoot, targetDir, config, context) {
5318
5322
  name: config.project.name,
5319
5323
  core_project: context.coreProjectName,
5320
5324
  path_prefix: context.pathPrefix,
5325
+ // Visibility only (issue #567) — see SiblingMarker.template_version.
5326
+ template_version: context.templateVersion,
5321
5327
  ...config.project.description ? { description: config.project.description } : {},
5322
5328
  // Always written (even when empty) so the field is discoverable — declare
5323
5329
  // this sibling's notable routes here and they surface on the core's
@@ -6138,6 +6144,11 @@ var UserFrontendSchema = z6.object({
6138
6144
  ),
6139
6145
  required_group: z6.string().min(1, NON_EMPTY_GROUP)
6140
6146
  }).strict();
6147
+ var ToolDeclarationSchema = z6.object({
6148
+ name: z6.string(),
6149
+ description: z6.string(),
6150
+ parameters: z6.record(z6.string(), z6.unknown()).default({})
6151
+ });
6141
6152
  var ChatAgentDeclarationSchema = z6.object({
6142
6153
  key: z6.string().regex(/^[a-z][a-z0-9-]*$/, "must be a lowercase kebab-case slug"),
6143
6154
  agent_name: z6.string().optional(),
@@ -6167,6 +6178,13 @@ var PluginManifestSchema = z6.object({
6167
6178
  // ordinary (data/event/CRUD) plugin.
6168
6179
  user_ingress: UserIngressSchema.optional(),
6169
6180
  user_frontend: UserFrontendSchema.optional(),
6181
+ // Tools the plugin's runtime exposes to an agentic worker (ADR-0014 §7,
6182
+ // #569). Default empty — an ordinary plugin declares none. Parsing this
6183
+ // (rather than leaving it to fall through the non-`.strict()` top-level
6184
+ // object and get silently dropped) is the fix for the parity gap: before
6185
+ // this, a manifest declaring `tools` validated with no error and lost the
6186
+ // field entirely.
6187
+ tools: z6.array(ToolDeclarationSchema).default([]),
6170
6188
  // Chat agents the plugin registers with Core (ADR-0017). Default empty — an
6171
6189
  // ordinary plugin declares none.
6172
6190
  chat_agents: z6.array(ChatAgentDeclarationSchema).default([])
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@biffo/cli",
3
- "version": "0.108.8",
3
+ "version": "0.109.0",
4
4
  "description": "Biffo project scaffolding CLI",
5
5
  "license": "MIT",
6
6
  "type": "module",