@telora/daemon 0.21.134 → 0.21.146
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.
- package/build-info.json +2 -2
- package/dist/audit/audit-hooks.d.ts +15 -6
- package/dist/audit/audit-hooks.d.ts.map +1 -1
- package/dist/audit/audit-hooks.js +56 -28
- package/dist/audit/audit-hooks.js.map +1 -1
- package/dist/ci/ci-escalation.js +1 -1
- package/dist/ci/ci-escalation.js.map +1 -1
- package/dist/ci/ci-sensor-loop.d.ts +24 -0
- package/dist/ci/ci-sensor-loop.d.ts.map +1 -1
- package/dist/ci/ci-sensor-loop.js +35 -9
- package/dist/ci/ci-sensor-loop.js.map +1 -1
- package/dist/cli/connect/config-write.d.ts +87 -0
- package/dist/cli/connect/config-write.d.ts.map +1 -0
- package/dist/cli/connect/config-write.js +255 -0
- package/dist/cli/connect/config-write.js.map +1 -0
- package/dist/cli/connect/registration.d.ts +76 -0
- package/dist/cli/connect/registration.d.ts.map +1 -0
- package/dist/cli/connect/registration.js +207 -0
- package/dist/cli/connect/registration.js.map +1 -0
- package/dist/cli/connect.d.ts +3 -141
- package/dist/cli/connect.d.ts.map +1 -1
- package/dist/cli/connect.js +9 -441
- package/dist/cli/connect.js.map +1 -1
- package/dist/completion/coverage-stabilized.d.ts +1 -1
- package/dist/completion/coverage-stabilized.d.ts.map +1 -1
- package/dist/completion/coverage-stabilized.js +1 -1
- package/dist/completion/coverage-stabilized.js.map +1 -1
- package/dist/completion/escalation-provenance.d.ts +2 -1
- package/dist/completion/escalation-provenance.d.ts.map +1 -1
- package/dist/completion/escalation-provenance.js +2 -1
- package/dist/completion/escalation-provenance.js.map +1 -1
- package/dist/completion/escalations.js +1 -1
- package/dist/completion/escalations.js.map +1 -1
- package/dist/completion/event-escalations.d.ts +1 -1
- package/dist/completion/event-escalations.d.ts.map +1 -1
- package/dist/completion/event-escalations.js +1 -1
- package/dist/completion/event-escalations.js.map +1 -1
- package/dist/completion/event.d.ts +1 -1
- package/dist/completion/event.d.ts.map +1 -1
- package/dist/completion/event.js +2 -2
- package/dist/completion/event.js.map +1 -1
- package/dist/completion/machine-remediable-demotion.d.ts +1 -1
- package/dist/completion/machine-remediable-demotion.d.ts.map +1 -1
- package/dist/completion/machine-remediable-demotion.js +2 -1
- package/dist/completion/machine-remediable-demotion.js.map +1 -1
- package/dist/completion/read-only-pristine.d.ts +1 -1
- package/dist/completion/read-only-pristine.d.ts.map +1 -1
- package/dist/completion/read-only-pristine.js +1 -1
- package/dist/completion/read-only-pristine.js.map +1 -1
- package/dist/completion/review-exit-escalations.d.ts +1 -1
- package/dist/completion/review-exit-escalations.d.ts.map +1 -1
- package/dist/completion/review-exit-phase.d.ts +5 -2
- package/dist/completion/review-exit-phase.d.ts.map +1 -1
- package/dist/completion/review-exit-phase.js +5 -2
- package/dist/completion/review-exit-phase.js.map +1 -1
- package/dist/completion/settle-injection-sweep.d.ts +9 -7
- package/dist/completion/settle-injection-sweep.d.ts.map +1 -1
- package/dist/completion/settle-injection-sweep.js +17 -15
- package/dist/completion/settle-injection-sweep.js.map +1 -1
- package/dist/completion/state-cascade.js +2 -2
- package/dist/completion/state-cascade.js.map +1 -1
- package/dist/completion/status-advance-phase.d.ts.map +1 -1
- package/dist/completion/status-advance-phase.js +2 -1
- package/dist/completion/status-advance-phase.js.map +1 -1
- package/dist/completion/team-lifecycle.d.ts.map +1 -1
- package/dist/completion/team-lifecycle.js +2 -1
- package/dist/completion/team-lifecycle.js.map +1 -1
- package/dist/delivery/delivery-advance-block.d.ts +1 -1
- package/dist/delivery/delivery-advance-block.d.ts.map +1 -1
- package/dist/delivery/delivery-advance-block.js +1 -1
- package/dist/delivery/delivery-advance-block.js.map +1 -1
- package/dist/delivery/delivery-lifecycle.js +1 -1
- package/dist/delivery/delivery-lifecycle.js.map +1 -1
- package/dist/delivery/delivery-merge-ops.js +1 -1
- package/dist/delivery/delivery-merge-ops.js.map +1 -1
- package/dist/delivery/delivery-reconciler-shadow.d.ts +1 -1
- package/dist/delivery/delivery-reconciler-shadow.d.ts.map +1 -1
- package/dist/delivery/delivery-reconciler-shadow.js +1 -1
- package/dist/delivery/delivery-reconciler-shadow.js.map +1 -1
- package/dist/delivery/operator-hold.d.ts +1 -1
- package/dist/delivery/operator-hold.d.ts.map +1 -1
- package/dist/delivery/paused-revival.d.ts.map +1 -1
- package/dist/delivery/paused-revival.js +2 -1
- package/dist/delivery/paused-revival.js.map +1 -1
- package/dist/directive/close-loop-dispatcher.d.ts +35 -12
- package/dist/directive/close-loop-dispatcher.d.ts.map +1 -1
- package/dist/directive/close-loop-dispatcher.js +31 -11
- package/dist/directive/close-loop-dispatcher.js.map +1 -1
- package/dist/directive/directive-dispatch.d.ts +1 -1
- package/dist/directive/directive-dispatch.d.ts.map +1 -1
- package/dist/directive/directive-dispatch.js +1 -1
- package/dist/directive/directive-dispatch.js.map +1 -1
- package/dist/directive/directive-executor.js +1 -1
- package/dist/directive/directive-executor.js.map +1 -1
- package/dist/drift/staleness-sensor.js +1 -1
- package/dist/drift/staleness-sensor.js.map +1 -1
- package/dist/focus/focus-engine.js +3 -2
- package/dist/focus/focus-engine.js.map +1 -1
- package/dist/focus/focus-lifecycle.d.ts.map +1 -1
- package/dist/focus/focus-lifecycle.js +2 -1
- package/dist/focus/focus-lifecycle.js.map +1 -1
- package/dist/focus/focus-respawn-guard.d.ts +1 -1
- package/dist/focus/focus-respawn-guard.d.ts.map +1 -1
- package/dist/focus/focus-respawn-guard.js +1 -1
- package/dist/focus/focus-respawn-guard.js.map +1 -1
- package/dist/focus/listener-auto-advance.d.ts +4 -45
- package/dist/focus/listener-auto-advance.d.ts.map +1 -1
- package/dist/focus/listener-auto-advance.js +5 -238
- package/dist/focus/listener-auto-advance.js.map +1 -1
- package/dist/focus/listener-spawn.d.ts +62 -0
- package/dist/focus/listener-spawn.d.ts.map +1 -0
- package/dist/focus/listener-spawn.js +418 -0
- package/dist/focus/listener-spawn.js.map +1 -0
- package/dist/focus/listener-state.d.ts +57 -0
- package/dist/focus/listener-state.d.ts.map +1 -0
- package/dist/focus/listener-state.js +63 -0
- package/dist/focus/listener-state.js.map +1 -0
- package/dist/focus/listener.d.ts +0 -58
- package/dist/focus/listener.d.ts.map +1 -1
- package/dist/focus/listener.js +25 -453
- package/dist/focus/listener.js.map +1 -1
- package/dist/focus/verify-open-issues.d.ts +62 -0
- package/dist/focus/verify-open-issues.d.ts.map +1 -0
- package/dist/focus/verify-open-issues.js +265 -0
- package/dist/focus/verify-open-issues.js.map +1 -0
- package/dist/focus-stage-lifecycle/index.d.ts +1 -1
- package/dist/focus-stage-lifecycle/index.d.ts.map +1 -1
- package/dist/focus-stage-lifecycle/index.js +1 -1
- package/dist/focus-stage-lifecycle/index.js.map +1 -1
- package/dist/focus-stage-lifecycle/wedge-watchdog.d.ts +1 -1
- package/dist/focus-stage-lifecycle/wedge-watchdog.d.ts.map +1 -1
- package/dist/focus-stage-lifecycle/wedge-watchdog.js +1 -1
- package/dist/focus-stage-lifecycle/wedge-watchdog.js.map +1 -1
- package/dist/git/index.d.ts +2 -0
- package/dist/git/index.d.ts.map +1 -1
- package/dist/git/index.js +2 -0
- package/dist/git/index.js.map +1 -1
- package/dist/git/merge-strategies.d.ts +80 -0
- package/dist/git/merge-strategies.d.ts.map +1 -0
- package/dist/git/merge-strategies.js +218 -0
- package/dist/git/merge-strategies.js.map +1 -0
- package/dist/git/merge-to-main.d.ts +76 -0
- package/dist/git/merge-to-main.d.ts.map +1 -0
- package/dist/git/merge-to-main.js +256 -0
- package/dist/git/merge-to-main.js.map +1 -0
- package/dist/git/merge.d.ts +27 -81
- package/dist/git/merge.d.ts.map +1 -1
- package/dist/git/merge.js +4 -448
- package/dist/git/merge.js.map +1 -1
- package/dist/git/state-detector.js +1 -1
- package/dist/git/state-detector.js.map +1 -1
- package/dist/loops/engine.js +1 -1
- package/dist/loops/engine.js.map +1 -1
- package/dist/merge/focus-merge.d.ts +1 -1
- package/dist/merge/focus-merge.d.ts.map +1 -1
- package/dist/merge/focus-merge.js +1 -1
- package/dist/merge/focus-merge.js.map +1 -1
- package/dist/merge/merge-back-loop.d.ts +1 -1
- package/dist/merge/merge-back-loop.d.ts.map +1 -1
- package/dist/merge/merge-back-loop.js +2 -2
- package/dist/merge/merge-back-loop.js.map +1 -1
- package/dist/merge/merge-detector.js +1 -1
- package/dist/merge/merge-detector.js.map +1 -1
- package/dist/nexus/return.js +1 -1
- package/dist/nexus/return.js.map +1 -1
- package/dist/prd/controller-shared.d.ts +223 -0
- package/dist/prd/controller-shared.d.ts.map +1 -0
- package/dist/prd/controller-shared.js +77 -0
- package/dist/prd/controller-shared.js.map +1 -0
- package/dist/prd/controller.d.ts +5 -256
- package/dist/prd/controller.d.ts.map +1 -1
- package/dist/prd/controller.js +9 -166
- package/dist/prd/controller.js.map +1 -1
- package/dist/prd/done-sweep.d.ts +55 -0
- package/dist/prd/done-sweep.d.ts.map +1 -0
- package/dist/prd/done-sweep.js +112 -0
- package/dist/prd/done-sweep.js.map +1 -0
- package/dist/prompt-sections/execution-sections.d.ts +1 -1
- package/dist/prompt-sections/execution-sections.d.ts.map +1 -1
- package/dist/prompt-sections/execution-sections.js +12 -2
- package/dist/prompt-sections/execution-sections.js.map +1 -1
- package/dist/prompt-sections/shared.d.ts +1 -1
- package/dist/prompt-sections/shared.d.ts.map +1 -1
- package/dist/queries/agent-resolvable-promotion.d.ts +1 -1
- package/dist/queries/agent-resolvable-promotion.d.ts.map +1 -1
- package/dist/queries/agent-resolvable-promotion.js +2 -1
- package/dist/queries/agent-resolvable-promotion.js.map +1 -1
- package/dist/queries/deliveries.d.ts +0 -195
- package/dist/queries/deliveries.d.ts.map +1 -1
- package/dist/queries/deliveries.js +1 -83
- package/dist/queries/deliveries.js.map +1 -1
- package/dist/queries/escalation-consumption.d.ts +120 -0
- package/dist/queries/escalation-consumption.d.ts.map +1 -0
- package/dist/queries/escalation-consumption.js +143 -0
- package/dist/queries/escalation-consumption.js.map +1 -0
- package/dist/queries/escalation-dispositions.d.ts +19 -0
- package/dist/queries/escalation-dispositions.d.ts.map +1 -0
- package/dist/queries/escalation-dispositions.js +18 -0
- package/dist/queries/escalation-dispositions.js.map +1 -0
- package/dist/queries/escalation-suppression.d.ts +1 -1
- package/dist/queries/escalation-suppression.d.ts.map +1 -1
- package/dist/queries/escalation-suppression.js +1 -1
- package/dist/queries/escalation-suppression.js.map +1 -1
- package/dist/queries/escalations.d.ts +343 -0
- package/dist/queries/escalations.d.ts.map +1 -0
- package/dist/queries/escalations.js +493 -0
- package/dist/queries/escalations.js.map +1 -0
- package/dist/queries/focus-discovery.d.ts +204 -0
- package/dist/queries/focus-discovery.d.ts.map +1 -0
- package/dist/queries/focus-discovery.js +92 -0
- package/dist/queries/focus-discovery.js.map +1 -0
- package/dist/queries/index.d.ts +4 -2
- package/dist/queries/index.d.ts.map +1 -1
- package/dist/queries/index.js +4 -2
- package/dist/queries/index.js.map +1 -1
- package/dist/queries/issues.d.ts +8 -436
- package/dist/queries/issues.d.ts.map +1 -1
- package/dist/queries/issues.js +7 -615
- package/dist/queries/issues.js.map +1 -1
- package/dist/resolvers/agent-escalations.d.ts +20 -0
- package/dist/resolvers/agent-escalations.d.ts.map +1 -1
- package/dist/resolvers/agent-escalations.js +40 -10
- package/dist/resolvers/agent-escalations.js.map +1 -1
- package/dist/resolvers/index.d.ts +2 -2
- package/dist/resolvers/index.d.ts.map +1 -1
- package/dist/resolvers/index.js +1 -1
- package/dist/resolvers/index.js.map +1 -1
- package/dist/resolvers/shared/git-diff.d.ts +99 -18
- package/dist/resolvers/shared/git-diff.d.ts.map +1 -1
- package/dist/resolvers/shared/git-diff.js +98 -27
- package/dist/resolvers/shared/git-diff.js.map +1 -1
- package/dist/shell/control-state.d.ts +1 -1
- package/dist/shell/control-state.d.ts.map +1 -1
- package/dist/shell/control-state.js +1 -1
- package/dist/shell/control-state.js.map +1 -1
- package/dist/shell/crash-recovery.d.ts +1 -1
- package/dist/shell/crash-recovery.d.ts.map +1 -1
- package/dist/shell/crash-recovery.js +2 -2
- package/dist/shell/crash-recovery.js.map +1 -1
- package/dist/shell/install-probe-tick.d.ts +1 -1
- package/dist/shell/install-probe-tick.d.ts.map +1 -1
- package/dist/shell/install-probe-tick.js +1 -1
- package/dist/shell/install-probe-tick.js.map +1 -1
- package/dist/shell/unified-shell.js +1 -1
- package/dist/shell/unified-shell.js.map +1 -1
- package/dist/spawn/model-routing.d.ts +1 -1
- package/dist/spawn/model-routing.d.ts.map +1 -1
- package/dist/spawn/model-routing.js +1 -1
- package/dist/spawn/model-routing.js.map +1 -1
- package/dist/spawn/prompt-assembly.d.ts +1 -1
- package/dist/spawn/prompt-assembly.d.ts.map +1 -1
- package/dist/spawn/prompt-assembly.js +1 -1
- package/dist/spawn/prompt-assembly.js.map +1 -1
- package/dist/spawn/spawn-decision.js +1 -1
- package/dist/spawn/spawn-decision.js.map +1 -1
- package/dist/spawn/worktree-session.d.ts +1 -1
- package/dist/spawn/worktree-session.d.ts.map +1 -1
- package/dist/spawn/worktree-session.js +1 -1
- package/dist/spawn/worktree-session.js.map +1 -1
- package/dist/templates/claude-md.d.ts +1 -1
- package/dist/templates/claude-md.d.ts.map +1 -1
- package/dist/templates/claude-md.js +12 -0
- package/dist/templates/claude-md.js.map +1 -1
- package/dist/verify/verification-default-on.d.ts +1 -1
- package/dist/verify/verification-default-on.d.ts.map +1 -1
- package/dist/verify/verification-deps.d.ts +1 -1
- package/dist/verify/verification-deps.d.ts.map +1 -1
- package/dist/verify/verification-engine.d.ts.map +1 -1
- package/dist/verify/verification-engine.js +20 -12
- package/dist/verify/verification-engine.js.map +1 -1
- package/dist/worktree/provision.js +1 -1
- package/dist/worktree/provision.js.map +1 -1
- package/dist/worktree/scratch-guard.d.ts.map +1 -1
- package/dist/worktree/scratch-guard.js +23 -2
- package/dist/worktree/scratch-guard.js.map +1 -1
- package/package.json +1 -1
package/build-info.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"commitSha": "
|
|
3
|
-
"builtAt": "2026-08-
|
|
2
|
+
"commitSha": "b3169e14d",
|
|
3
|
+
"builtAt": "2026-08-21T18:35:12.166Z",
|
|
4
4
|
"expectedMigrations": [
|
|
5
5
|
"20250829113330_create_org_nodes_table.sql",
|
|
6
6
|
"20250829113402_fix_function_security_search_path.sql",
|
|
@@ -195,12 +195,21 @@ export declare function installReadOnlyAuditGuards(worktreePath: string): void;
|
|
|
195
195
|
* would wrongly PASS such a voided commit; this does not.
|
|
196
196
|
* - A trailing `Co-Authored-By:` (or any other trailer) in the same block
|
|
197
197
|
* still parses, so the commit PASSES -- the 2026-08-13 failure mode.
|
|
198
|
-
* - The value must be a well-formed UUID (8-4-4-4-12 hex)
|
|
199
|
-
*
|
|
200
|
-
*
|
|
201
|
-
*
|
|
202
|
-
*
|
|
203
|
-
*
|
|
198
|
+
* - The value must be a well-formed UUID (8-4-4-4-12 hex) OR the explicit
|
|
199
|
+
* non-delivery sentinel `Telora-Delivery: none` (NON_DELIVERY_SENTINEL,
|
|
200
|
+
* matched case-insensitively); a malformed or truncated id FAILS, and a
|
|
201
|
+
* sentinel voided into the body FAILS like any other voided value.
|
|
202
|
+
*
|
|
203
|
+
* The sentinel lets a genuinely delivery-less commit (daemon housekeeping, or
|
|
204
|
+
* any commit an agent cannot attribute to a delivery) declare itself as such
|
|
205
|
+
* rather than being forced to borrow a real delivery id -- which would falsely
|
|
206
|
+
* attribute that work to the borrowed delivery's verify evidence. It is a
|
|
207
|
+
* trailer VALUE, not a bypass: a sentinel commit is still labelled, so the
|
|
208
|
+
* verify gate's partition stays total (see NON_DELIVERY_SENTINEL in git-diff).
|
|
209
|
+
*
|
|
210
|
+
* The failure message names the missing trailer, the sentinel escape for a
|
|
211
|
+
* non-delivery commit, and the exact `git commit --trailer` forms, so an agent
|
|
212
|
+
* self-corrects without escalating or borrowing an id.
|
|
204
213
|
*
|
|
205
214
|
* The hook lives in the SAME `.telora-hooks/` directory as any audit
|
|
206
215
|
* `pre-commit` hook, because `core.hooksPath` is a single value -- git runs
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit-hooks.d.ts","sourceRoot":"","sources":["../../src/audit/audit-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"audit-hooks.d.ts","sourceRoot":"","sources":["../../src/audit/audit-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAYjD;;;;;GAKG;AACH,KAAK,SAAS,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK,SAAS,CAAC;AAE5D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE,SAAsB,GAC7B,IAAI,CAsBN;AA2BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CA8CxF;AAED,oFAAoF;AACpF,MAAM,MAAM,wBAAwB,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,MAAM,GAAG,wBAAwB,CAiBxF;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAmCpE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CA0BnE;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CA8BpE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAIrE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,wBAAgB,mCAAmC,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAyF9E;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,8BAA8B,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI,CAK5F"}
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
17
17
|
import { basename, isAbsolute, join, resolve } from 'node:path';
|
|
18
18
|
import { runGitSync } from '../git/index.js';
|
|
19
|
+
import { NON_DELIVERY_SENTINEL } from '../resolvers/shared/git-diff.js';
|
|
19
20
|
import { buildClaudeSettings, mergeClaudeSettings } from '../templates/claude-settings.js';
|
|
20
21
|
import { ensureCodexConfigIgnoredInWorktree } from '../worktree/provision.js';
|
|
21
22
|
import { createLogger } from '../shell/log.js';
|
|
@@ -368,12 +369,21 @@ export function installReadOnlyAuditGuards(worktreePath) {
|
|
|
368
369
|
* would wrongly PASS such a voided commit; this does not.
|
|
369
370
|
* - A trailing `Co-Authored-By:` (or any other trailer) in the same block
|
|
370
371
|
* still parses, so the commit PASSES -- the 2026-08-13 failure mode.
|
|
371
|
-
* - The value must be a well-formed UUID (8-4-4-4-12 hex)
|
|
372
|
-
*
|
|
372
|
+
* - The value must be a well-formed UUID (8-4-4-4-12 hex) OR the explicit
|
|
373
|
+
* non-delivery sentinel `Telora-Delivery: none` (NON_DELIVERY_SENTINEL,
|
|
374
|
+
* matched case-insensitively); a malformed or truncated id FAILS, and a
|
|
375
|
+
* sentinel voided into the body FAILS like any other voided value.
|
|
373
376
|
*
|
|
374
|
-
* The
|
|
375
|
-
*
|
|
376
|
-
*
|
|
377
|
+
* The sentinel lets a genuinely delivery-less commit (daemon housekeeping, or
|
|
378
|
+
* any commit an agent cannot attribute to a delivery) declare itself as such
|
|
379
|
+
* rather than being forced to borrow a real delivery id -- which would falsely
|
|
380
|
+
* attribute that work to the borrowed delivery's verify evidence. It is a
|
|
381
|
+
* trailer VALUE, not a bypass: a sentinel commit is still labelled, so the
|
|
382
|
+
* verify gate's partition stays total (see NON_DELIVERY_SENTINEL in git-diff).
|
|
383
|
+
*
|
|
384
|
+
* The failure message names the missing trailer, the sentinel escape for a
|
|
385
|
+
* non-delivery commit, and the exact `git commit --trailer` forms, so an agent
|
|
386
|
+
* self-corrects without escalating or borrowing an id.
|
|
377
387
|
*
|
|
378
388
|
* The hook lives in the SAME `.telora-hooks/` directory as any audit
|
|
379
389
|
* `pre-commit` hook, because `core.hooksPath` is a single value -- git runs
|
|
@@ -414,32 +424,50 @@ export function installDeliveryTrailerCommitMsgHook(worktreePath) {
|
|
|
414
424
|
' | grep -i \'^Telora-Delivery:\' | head -n1 | sed \'s/^[^:]*:[[:space:]]*//\' | tr -d \'[:space:]\')"',
|
|
415
425
|
'',
|
|
416
426
|
'uuid_re=\'^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$\'',
|
|
427
|
+
`sentinel_lc='${NON_DELIVERY_SENTINEL.toLowerCase()}'`,
|
|
417
428
|
'',
|
|
418
|
-
'
|
|
419
|
-
'
|
|
420
|
-
'
|
|
421
|
-
|
|
422
|
-
'
|
|
423
|
-
'
|
|
424
|
-
'
|
|
425
|
-
'
|
|
426
|
-
'
|
|
427
|
-
' echo "" >&2',
|
|
428
|
-
' echo " Add it as a git TRAILER (not a body line) so an appended" >&2',
|
|
429
|
-
' echo " Co-Authored-By cannot void it:" >&2',
|
|
430
|
-
' echo "" >&2',
|
|
431
|
-
' echo " git commit --trailer \\"Telora-Delivery: <deliveryId>\\" -m \\"<subject>\\"" >&2',
|
|
432
|
-
' echo "" >&2',
|
|
433
|
-
' echo " To fix the commit you just attempted:" >&2',
|
|
434
|
-
' echo "" >&2',
|
|
435
|
-
' echo " git commit --amend --no-edit --trailer \\"Telora-Delivery: <deliveryId>\\"" >&2',
|
|
436
|
-
' echo "" >&2',
|
|
437
|
-
' echo "========================================================" >&2',
|
|
438
|
-
' echo "" >&2',
|
|
439
|
-
' exit 1',
|
|
429
|
+
'# Accept either a well-formed delivery UUID or the explicit non-delivery',
|
|
430
|
+
'# sentinel (`Telora-Delivery: none`, matched case-insensitively like the',
|
|
431
|
+
'# trailer key). A sentinel commit declares itself delivery-less but is still',
|
|
432
|
+
"# a LABELLED commit git's trailer parser reads back, so the verify gate's",
|
|
433
|
+
'# partition stays total. Everything else is refused -- including a sentinel',
|
|
434
|
+
'# voided into the commit BODY, which git does not parse, so $value is empty.',
|
|
435
|
+
'value_lc="$(printf %s "$value" | tr \'[:upper:]\' \'[:lower:]\')"',
|
|
436
|
+
'if [[ "$value" =~ $uuid_re || "$value_lc" == "$sentinel_lc" ]]; then',
|
|
437
|
+
' exit 0',
|
|
440
438
|
'fi',
|
|
441
439
|
'',
|
|
442
|
-
'
|
|
440
|
+
'echo "" >&2',
|
|
441
|
+
'echo "========================================================" >&2',
|
|
442
|
+
'echo " COMMIT REFUSED: missing Telora-Delivery trailer" >&2',
|
|
443
|
+
'echo "========================================================" >&2',
|
|
444
|
+
'echo "" >&2',
|
|
445
|
+
'echo " Every commit must carry a well-formed delivery trailer:" >&2',
|
|
446
|
+
'echo "" >&2',
|
|
447
|
+
'echo " Telora-Delivery: <deliveryId>" >&2',
|
|
448
|
+
'echo "" >&2',
|
|
449
|
+
'echo " Add it as a git TRAILER (not a body line) so an appended" >&2',
|
|
450
|
+
'echo " Co-Authored-By cannot void it:" >&2',
|
|
451
|
+
'echo "" >&2',
|
|
452
|
+
'echo " git commit --trailer \\"Telora-Delivery: <deliveryId>\\" -m \\"<subject>\\"" >&2',
|
|
453
|
+
'echo "" >&2',
|
|
454
|
+
'echo " To fix the commit you just attempted:" >&2',
|
|
455
|
+
'echo "" >&2',
|
|
456
|
+
'echo " git commit --amend --no-edit --trailer \\"Telora-Delivery: <deliveryId>\\"" >&2',
|
|
457
|
+
'echo "" >&2',
|
|
458
|
+
'echo " If this commit genuinely belongs to NO delivery (daemon" >&2',
|
|
459
|
+
'echo " housekeeping, or work you cannot attribute to one), do NOT" >&2',
|
|
460
|
+
'echo " borrow a real delivery id: that FALSELY ATTRIBUTES this work to" >&2',
|
|
461
|
+
'echo " that delivery, partitioning its verify-gate evidence to include" >&2',
|
|
462
|
+
'echo " commits that are not its own. Declare it delivery-less instead:" >&2',
|
|
463
|
+
'echo "" >&2',
|
|
464
|
+
`echo " git commit --trailer \\"Telora-Delivery: ${NON_DELIVERY_SENTINEL}\\" -m \\"<subject>\\"" >&2`,
|
|
465
|
+
'echo "" >&2',
|
|
466
|
+
'echo " (Merge commits are exempt by shape and need no trailer.)" >&2',
|
|
467
|
+
'echo "" >&2',
|
|
468
|
+
'echo "========================================================" >&2',
|
|
469
|
+
'echo "" >&2',
|
|
470
|
+
'exit 1',
|
|
443
471
|
'',
|
|
444
472
|
].join('\n');
|
|
445
473
|
const hookPath = join(hooksDir, 'commit-msg');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit-hooks.js","sourceRoot":"","sources":["../../src/audit/audit-hooks.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"audit-hooks.js","sourceRoot":"","sources":["../../src/audit/audit-hooks.ts"],"names":[],"mappings":"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"}
|
package/dist/ci/ci-escalation.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* escalation rather than disappearing into the log.
|
|
8
8
|
*/
|
|
9
9
|
import { ESCALATION_REASONS, ESCALATION_DISPOSITIONS } from '@telora/daemon-core';
|
|
10
|
-
import { createEscalation } from '../queries/
|
|
10
|
+
import { createEscalation } from '../queries/escalations.js';
|
|
11
11
|
import { createLogger } from '../shell/log.js';
|
|
12
12
|
const log = createLogger({ module: 'CD' });
|
|
13
13
|
export const CD_PUSH_FAILED_KIND = 'cd_push_failed';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ci-escalation.js","sourceRoot":"","sources":["../../src/ci/ci-escalation.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"ci-escalation.js","sourceRoot":"","sources":["../../src/ci/ci-escalation.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AAG3C,MAAM,CAAC,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;AAEpD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,0BAA0B,CACxC,YAAqB,EACrB,MAA4C;IAE5C,OAAO,YAAY,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACzF,CAAC;AAWD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAA8B;IAE9B,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;IAC/F,IAAI,CAAC;QACH,MAAM,gBAAgB,CAAC;YACrB,cAAc;YACd,SAAS;YACT,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,kBAAkB,CAAC,iBAAiB;YAChD,qEAAqE;YACrE,WAAW,EAAE,uBAAuB,CAAC,cAAc;YACnD,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE;YAC9C,WAAW,EACT,0CAA0C,iBAAiB,iBAAiB;gBAC5E,cAAc,SAAS,IAAI;gBAC3B,iBAAiB,OAAO,IAAI;gBAC5B,cAAc,SAAS,MAAM;gBAC7B,oFAAoF;gBACpF,6DAA6D;YAC/D,YAAY,EAAE,+CAA+C;YAC7D,UAAU,EACR,uEAAuE;gBACvE,0DAA0D;YAC5D,cAAc,EAAE,mBAAmB;YACnC,2EAA2E;YAC3E,QAAQ,EAAE;gBACR,kBAAkB,EAAE,iBAAiB;gBACrC,UAAU,EAAE,SAAS;aACtB;SACF,CAAC,CAAC;QACH,GAAG,CAAC,IAAI,CAAC,6CAA6C,OAAO,MAAM,SAAS,IAAI,CAAC,CAAC;IACpF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CACN,2DAA2D,OAAO,GAAG,EACpE,GAAa,CAAC,OAAO,CACvB,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -48,6 +48,30 @@ export declare const MERGE_HELD_NO_RECEIVER_CODE = "merge.held_no_receiver";
|
|
|
48
48
|
export declare function __resetCiSensorHealthStateForTests(): void;
|
|
49
49
|
/** escalation_kind for a red CI run on integration. */
|
|
50
50
|
export declare const CI_RUN_RED_ESCALATION_KIND = "ci_run_red";
|
|
51
|
+
/**
|
|
52
|
+
* The working posture a ci_run_red filing sets ("CI green is priority one until
|
|
53
|
+
* the red clears") and the condition under which that posture ENDS. Recorded as
|
|
54
|
+
* structured metadata on the filing so a team INHERITING the escalation can tell,
|
|
55
|
+
* from the escalation itself and not only its prose, whether the obligation still
|
|
56
|
+
* binds. The exit is the escalation's own resolution: when a later integration
|
|
57
|
+
* run goes green, defaultResolveCiRedEscalations marks the row resolved -- the
|
|
58
|
+
* SAME event that ends the posture. A machine-written obligation with no exit is
|
|
59
|
+
* the defect this carries the fix for (cf. "Every daemon-written state has an
|
|
60
|
+
* exit or names a human act").
|
|
61
|
+
*/
|
|
62
|
+
export declare const CI_RUN_RED_POSTURE = "ci_green_priority";
|
|
63
|
+
export declare const CI_RUN_RED_POSTURE_TERMINATES = "escalation_resolved";
|
|
64
|
+
/**
|
|
65
|
+
* Structured metadata for a ci_run_red filing: the cause-key routing fields PLUS
|
|
66
|
+
* the posture it sets and that posture's termination condition. Pure and
|
|
67
|
+
* exported so the metadata contract is unit-testable without mocking createEscalation.
|
|
68
|
+
*/
|
|
69
|
+
export declare function ciRunRedEscalationMetadata(params: {
|
|
70
|
+
sha: string;
|
|
71
|
+
branch: string;
|
|
72
|
+
productId: string;
|
|
73
|
+
focusId: string;
|
|
74
|
+
}): Record<string, unknown>;
|
|
51
75
|
/** Minimal open-escalation row shape the sensor's dedup / resolve reads. */
|
|
52
76
|
interface CiEscalationRow {
|
|
53
77
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ci-sensor-loop.d.ts","sourceRoot":"","sources":["../../src/ci/ci-sensor-loop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EAAuD,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"ci-sensor-loop.d.ts","sourceRoot":"","sources":["../../src/ci/ci-sensor-loop.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,8 +43,9 @@
|
|
|
43
43
|
import { configForProduct } from '../shell/config.js';
|
|
44
44
|
import { decideCiSensorAction, createGitNativeCiStatusReader } from './ci-status.js';
|
|
45
45
|
import { listCiStatusRefs, resolveRemoteIntegrationTip } from './ci-status-git.js';
|
|
46
|
-
import { createEscalation, markEscalationResolved } from '../queries/
|
|
47
|
-
import { getDeliveryContext
|
|
46
|
+
import { createEscalation, markEscalationResolved } from '../queries/escalations.js';
|
|
47
|
+
import { getDeliveryContext } from '../queries/deliveries.js';
|
|
48
|
+
import { getActiveFocuses } from '../queries/focus-discovery.js';
|
|
48
49
|
import { readDeliveryTrailer, resolveRecordedMergeRange, listRangeCommits } from '../resolvers/shared/git-diff.js';
|
|
49
50
|
import { callApi } from '../queries/shared.js';
|
|
50
51
|
import { ciRunRedCauseKey } from '../queries/cause-key.js';
|
|
@@ -66,6 +67,35 @@ export function __resetCiSensorHealthStateForTests() {
|
|
|
66
67
|
}
|
|
67
68
|
/** escalation_kind for a red CI run on integration. */
|
|
68
69
|
export const CI_RUN_RED_ESCALATION_KIND = 'ci_run_red';
|
|
70
|
+
/**
|
|
71
|
+
* The working posture a ci_run_red filing sets ("CI green is priority one until
|
|
72
|
+
* the red clears") and the condition under which that posture ENDS. Recorded as
|
|
73
|
+
* structured metadata on the filing so a team INHERITING the escalation can tell,
|
|
74
|
+
* from the escalation itself and not only its prose, whether the obligation still
|
|
75
|
+
* binds. The exit is the escalation's own resolution: when a later integration
|
|
76
|
+
* run goes green, defaultResolveCiRedEscalations marks the row resolved -- the
|
|
77
|
+
* SAME event that ends the posture. A machine-written obligation with no exit is
|
|
78
|
+
* the defect this carries the fix for (cf. "Every daemon-written state has an
|
|
79
|
+
* exit or names a human act").
|
|
80
|
+
*/
|
|
81
|
+
export const CI_RUN_RED_POSTURE = 'ci_green_priority';
|
|
82
|
+
export const CI_RUN_RED_POSTURE_TERMINATES = 'escalation_resolved';
|
|
83
|
+
/**
|
|
84
|
+
* Structured metadata for a ci_run_red filing: the cause-key routing fields PLUS
|
|
85
|
+
* the posture it sets and that posture's termination condition. Pure and
|
|
86
|
+
* exported so the metadata contract is unit-testable without mocking createEscalation.
|
|
87
|
+
*/
|
|
88
|
+
export function ciRunRedEscalationMetadata(params) {
|
|
89
|
+
return {
|
|
90
|
+
sha: params.sha,
|
|
91
|
+
branch: params.branch,
|
|
92
|
+
product_id: params.productId,
|
|
93
|
+
focus_id: params.focusId,
|
|
94
|
+
cause_key: ciRunRedCauseKey(params.branch),
|
|
95
|
+
posture: CI_RUN_RED_POSTURE,
|
|
96
|
+
terminates_when: CI_RUN_RED_POSTURE_TERMINATES,
|
|
97
|
+
};
|
|
98
|
+
}
|
|
69
99
|
const OPEN_STATUSES = new Set(['pending', 'in_review']);
|
|
70
100
|
/** Statuses whose cause_key suppresses a re-file: open (idempotency) + dismissed (memory). */
|
|
71
101
|
const SUPPRESSING_STATUSES = new Set(['pending', 'in_review', 'dismissed']);
|
|
@@ -161,13 +191,9 @@ async function defaultFileCiRedEscalation(params) {
|
|
|
161
191
|
`it to an operator.`,
|
|
162
192
|
// cause_key (branch) collapses successive red tips onto one open filing and
|
|
163
193
|
// keeps the branch silent while it is already signalled; a green resolves it.
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
product_id: params.productId,
|
|
168
|
-
focus_id: params.focusId,
|
|
169
|
-
cause_key: ciRunRedCauseKey(params.branch),
|
|
170
|
-
},
|
|
194
|
+
// The posture + terminates_when keys make the obligation's exit legible from
|
|
195
|
+
// the escalation itself (see ciRunRedEscalationMetadata).
|
|
196
|
+
metadata: ciRunRedEscalationMetadata(params),
|
|
171
197
|
});
|
|
172
198
|
}
|
|
173
199
|
const defaultOwningFocusResolverDeps = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ci-sensor-loop.js","sourceRoot":"","sources":["../../src/ci/ci-sensor-loop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,6BAA6B,EAAuB,MAAM,gBAAgB,CAAC;AAC1G,OAAO,EAAE,gBAAgB,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"ci-sensor-loop.js","sourceRoot":"","sources":["../../src/ci/ci-sensor-loop.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Connect-flow config + daemon-start writers.
|
|
3
|
+
*
|
|
4
|
+
* The daemon.json / starter-prompt / .gitignore writers and the on-disk
|
|
5
|
+
* daemon-binary resolution + detached start, plus Codex CLI path resolution.
|
|
6
|
+
* Split out of cli/connect.ts (file-size limit) into the connect/* family;
|
|
7
|
+
* connect.ts re-exports these so existing importers keep resolving them from
|
|
8
|
+
* cli/connect.js. Leaf module: connect.ts -> connect/config-write.ts, never back.
|
|
9
|
+
*/
|
|
10
|
+
import type { ConnectIO } from './shared.js';
|
|
11
|
+
/**
|
|
12
|
+
* Resolve Codex to a stable on-disk executable for daemon config.
|
|
13
|
+
*
|
|
14
|
+
* The daemon runs detached and may not inherit the operator's login-shell PATH.
|
|
15
|
+
* Persisting an absolute path during `connect --harness codex` keeps future
|
|
16
|
+
* agent spawns independent of shell startup files.
|
|
17
|
+
*/
|
|
18
|
+
export declare function resolveCodexCliPath(repoPath: string): string | null;
|
|
19
|
+
/**
|
|
20
|
+
* Write the daemon config to ~/.telora/daemon.json.
|
|
21
|
+
*
|
|
22
|
+
* Connect-flow config is single-product. If a config already exists,
|
|
23
|
+
* we overwrite it and print a warning -- re-running connect is the
|
|
24
|
+
* supported recovery path.
|
|
25
|
+
*
|
|
26
|
+
* The `trackerId` is persisted in this file (mode 0600 in $HOME) so the
|
|
27
|
+
* background daemon can read it on startup without an env var. This matches
|
|
28
|
+
* the security profile of `.mcp.json`, which already stores the same secret.
|
|
29
|
+
*/
|
|
30
|
+
export declare function writeConnectDaemonConfig(params: {
|
|
31
|
+
teloraUrl: string;
|
|
32
|
+
trackerId: string;
|
|
33
|
+
organizationId: string;
|
|
34
|
+
productId: string;
|
|
35
|
+
repoPath: string;
|
|
36
|
+
io: ConnectIO;
|
|
37
|
+
/** Absolute path of the per-product isolated CODEX_HOME (local-model flow). */
|
|
38
|
+
codexHome?: string;
|
|
39
|
+
/** Default coding engine for the product (local-model flow). */
|
|
40
|
+
defaultCodingEngine?: string;
|
|
41
|
+
/** Model id the local-model server exposes (local-model flow). */
|
|
42
|
+
codexModel?: string;
|
|
43
|
+
/** Absolute path to the Codex CLI for detached daemon spawns. */
|
|
44
|
+
codexPath?: string;
|
|
45
|
+
}): string;
|
|
46
|
+
/**
|
|
47
|
+
* Write the AHA starter prompt + first-session marker into the repo's
|
|
48
|
+
* `.telora/` directory. The bash bootstrap reads `starter-prompt.md` and
|
|
49
|
+
* passes it to `claude` as the first user message.
|
|
50
|
+
*
|
|
51
|
+
* Returns the absolute path of the prompt file (or null on failure -- the
|
|
52
|
+
* caller treats prompt injection as best-effort and falls back to plain
|
|
53
|
+
* `claude` if this artifact is missing).
|
|
54
|
+
*/
|
|
55
|
+
export declare function writeStarterPromptArtifacts(repoPath: string, io: ConnectIO): string | null;
|
|
56
|
+
/**
|
|
57
|
+
* Append `.telora/` and `.mcp.json` to .gitignore in the repo root if missing.
|
|
58
|
+
*
|
|
59
|
+
* `.mcp.json` is per-user-machine (absolute path to the daemon's bundled
|
|
60
|
+
* MCP). It's regenerated by `connect` and refreshed by the daemon on every
|
|
61
|
+
* startup, so collaborators don't need to share it.
|
|
62
|
+
*/
|
|
63
|
+
export declare function ensureGitignoreEntries(repoPath: string, io: ConnectIO, extra?: readonly string[]): void;
|
|
64
|
+
/**
|
|
65
|
+
* Start the daemon as a detached background process from a stable on-disk
|
|
66
|
+
* install -- never from an ephemeral npx cache (which cannot self-update).
|
|
67
|
+
*
|
|
68
|
+
* Resolution order:
|
|
69
|
+
* 1. Use an existing on-disk binary (global install on PATH, or a repo-local
|
|
70
|
+
* `node_modules/.bin/telora-daemon` dev dependency).
|
|
71
|
+
* 2. If none exists, run `npm install -g @telora/daemon` best-effort. Global
|
|
72
|
+
* install keeps the connect flow language-agnostic -- it leaves no
|
|
73
|
+
* `package.json`/`node_modules`/dev-dependency footprint in the user's
|
|
74
|
+
* repo (Rust/Python/Go/empty repos stay untouched).
|
|
75
|
+
* 3. Spawn the resolved on-disk `telora-daemon run`.
|
|
76
|
+
*
|
|
77
|
+
* On install failure this throws (the caller surfaces the manual
|
|
78
|
+
* `npm install -g @telora/daemon` instruction and skips auto-start); it does
|
|
79
|
+
* NOT fall back to npx, because an npx-run daemon is exactly what this focus
|
|
80
|
+
* retires.
|
|
81
|
+
*
|
|
82
|
+
* Bin name is explicit (`telora-daemon`) because the package's bins are
|
|
83
|
+
* `telora-daemon` and `telora-daemon-wrapper`; neither matches the unscoped
|
|
84
|
+
* package name `daemon`.
|
|
85
|
+
*/
|
|
86
|
+
export declare function startDaemonOnDisk(repoPath: string): number;
|
|
87
|
+
//# sourceMappingURL=config-write.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-write.d.ts","sourceRoot":"","sources":["../../../src/cli/connect/config-write.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAmC7C;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgBnE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,SAAS,CAAC;IACd,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,MAAM,CA4CT;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,SAAS,GACZ,MAAM,GAAG,IAAI,CAsBf;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,SAAS,EACb,KAAK,GAAE,SAAS,MAAM,EAAO,GAC5B,IAAI,CAiBN;AAkCD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA+B1D"}
|