@ours.network/fleet 0.19.0-nightly.4 → 0.19.0-nightly.6

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.
@@ -1,9 +1,9 @@
1
1
  {
2
- "version": "0.19.0-nightly.4",
3
- "buildId": "27ab2ac6d2c0",
4
- "commit": "0213a2667a2d24e14297f7364f42880997451742",
2
+ "version": "0.19.0-nightly.6",
3
+ "buildId": "1165e05339e3",
4
+ "commit": "188e186e43324119f08d38106f9bcd7606199e5c",
5
5
  "dirty": true,
6
- "builtAt": "2026-08-23T12:52:41.918Z",
6
+ "builtAt": "2026-08-23T18:53:56.442Z",
7
7
  "capabilities": [
8
8
  "monitor.interrupt.after_tool"
9
9
  ]
@@ -204,7 +204,7 @@ export function registerTaskCommands(parent, cOpt) {
204
204
  templateRef = { name: snap.name, version: snap.version, content_hash: snap.content_hash };
205
205
  }
206
206
  else if (opts.room !== false) {
207
- const defaultTpl = cfg.tasks?.default_room_template ?? cfg.rooms?.defaults?.template ?? 'development-team';
207
+ const defaultTpl = cfg.tasks?.default_room_template ?? cfg.rooms?.defaults?.template ?? 'briefing';
208
208
  const t = resolveTemplate(defaultTpl, allTemplates(cfg));
209
209
  if (t) {
210
210
  const snap = snapshotTemplate(t);
@@ -1,40 +1,40 @@
1
1
  import { createHash } from 'node:crypto';
2
- const DEVELOPMENT_TEAM = {
3
- name: 'development-team',
2
+ const BRIEFING = {
3
+ name: 'briefing',
4
4
  version: 1,
5
5
  builtin: true,
6
- description: 'Four equal Developer peers: implement, review, test, and cross-validate',
6
+ description: 'Phased task pipeline: Architect specifies, Developer implements, Tester verifies',
7
7
  room: { quiet_membership: false, anonymous: false },
8
8
  contract: [
9
- 'Work in the room. Preserve evidence. Review independently before consensus.',
10
- 'Every material change needs independent review from another peer.',
11
- 'Peers reproduce, test, stress, criticize, and cross-validate each other\'s work.',
12
- 'Evidence and decisions are posted into the Room; detailed scratch work stays in role worklogs.',
13
- 'Completion requires the room\'s agreed acceptance criteria, not merely one agent declaring success.',
9
+ 'Architect produces a spec and posts it to the room. Work pauses for owner approval.',
10
+ 'Developer implements per approved spec.',
11
+ 'Tester verifies spec conformance and test coverage.',
12
+ 'Completion requires tester sign-off.',
14
13
  ].join('\n'),
15
14
  members: [
16
- { slot: 'developer', role: 'Developer', count: 4, role_ref: 'Developer' },
15
+ { slot: 'architect', role: 'Architect', count: 1, role_ref: 'Architect' },
16
+ { slot: 'developer', role: 'Developer', count: 1, role_ref: 'Developer' },
17
+ { slot: 'tester', role: 'Tester', count: 1, role_ref: 'Tester' },
17
18
  ],
18
19
  };
19
- const RESEARCH_DECISION = {
20
- name: 'research-decision',
20
+ const CONSILIUM = {
21
+ name: 'consilium',
21
22
  version: 1,
22
23
  builtin: true,
23
- description: 'Two Researchers, one Critic, one Synthesizer for evidence-based decisions',
24
+ description: 'Deliberation pair: Secretary writes code, Critic reviews every decision deliberated together',
24
25
  room: { quiet_membership: false, anonymous: false },
25
26
  contract: [
26
- 'Researchers gather independent evidence. Critic attacks assumptions and missing cases.',
27
- 'Synthesizer produces the final decision record with cited evidence, alternatives, and recommendation.',
28
- 'No code mutation is implied by this template.',
29
- 'Completion requires cited evidence, alternatives considered, and an explicit recommendation.',
27
+ 'Secretary and Critic deliberate every decision together before acting.',
28
+ 'Secretary writes code; Critic reviews and challenges.',
29
+ 'No material change lands without both agreeing.',
30
+ 'Completion requires joint sign-off.',
30
31
  ].join('\n'),
31
32
  members: [
32
- { slot: 'researcher', role: 'Researcher', count: 2, role_ref: 'Researcher' },
33
+ { slot: 'secretary', role: 'Secretary', count: 1, role_ref: 'Secretary' },
33
34
  { slot: 'critic', role: 'Critic', count: 1, role_ref: 'Critic' },
34
- { slot: 'synthesizer', role: 'Synthesizer', count: 1, role_ref: 'Synthesizer' },
35
35
  ],
36
36
  };
37
- export const BUILTIN_TEMPLATES = [DEVELOPMENT_TEAM, RESEARCH_DECISION];
37
+ export const BUILTIN_TEMPLATES = [BRIEFING, CONSILIUM];
38
38
  export function hashTemplate(t) {
39
39
  const canonical = JSON.stringify({
40
40
  name: t.name, version: t.version, description: t.description,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ours.network/fleet",
3
- "version": "0.19.0-nightly.4",
3
+ "version": "0.19.0-nightly.6",
4
4
  "description": "Harness-agnostic fleet of persistent, identity-bound AI agents. Declarative fleet.yaml, tmux or ACP sessions, supervision, and ours.network messaging.",
5
5
  "type": "module",
6
6
  "license": "FSL-1.1-Apache-2.0",