@mrciphersmith/keryx 0.3.92 → 0.3.93

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 (3) hide show
  1. package/dist/cli.js +8 -2
  2. package/dist/core.js +133 -123
  3. package/package.json +1 -1
package/dist/cli.js CHANGED
@@ -21105,7 +21105,7 @@ var package_default;
21105
21105
  var init_package = __esm(() => {
21106
21106
  package_default = {
21107
21107
  name: "@mrciphersmith/keryx",
21108
- version: "0.3.92",
21108
+ version: "0.3.93",
21109
21109
  description: "Version-controlled project context for AI coding agents: code graph, architecture wiki, project memory, relevant tests, quality signals, and task flows.",
21110
21110
  private: false,
21111
21111
  publishConfig: {
@@ -190994,15 +190994,21 @@ function reviewHelpText() {
190994
190994
 
190995
190995
  Usage:
190996
190996
  keryx review attach --flow <id> --target <kind> --ref <ref> [--head <sha>]
190997
- [--reviewers a,b] [--report <path>]
190997
+ [--reviewers a,b] [--report <path>] [--research <ledger.json>]
190998
190998
  keryx review start --target <kind> --ref <ref> [--head <sha>] [--reviewers a,b] [--report <path>]
190999
+ [--research <ledger.json>] [--review-id <id>]
190999
191000
  keryx review ingest --report <path> [--flow <id>] --ref <ref> [--head <sha>]
191001
+ [--research <ledger.json>] [--review-id <id>]
191000
191002
  [--verifications <file|->] [--verification-mode ${VERIFICATION_MODES.join("|")}]
191001
191003
  [--scope <scope.json>] [--blast-radius <blast-radius.json>]
191002
191004
  [--cross-family-review <file|->]
191003
191005
  [--refuted <file|->]
191004
191006
  [--max-findings <n>] [--spent <usd>] [--spend-ceiling <usd>]
191007
+ [--tokens-in <n>] [--tokens-out <n>]
191005
191008
  [--parallel <n>] [--outstanding <n>]
191009
+ --research is the research ledger {version, scopeReviewed, rawReconciled,
191010
+ obligations, dispatch}; without it the package stays PENDING and
191011
+ \`review complete\` refuses on scope, raw reconciliation and dispatch evidence.
191006
191012
  keryx review scope [--ref <base>] [--diff <file|->] [--path a,b] [--context <n>]
191007
191013
  [--json | --scoped-diff] [--append <file>]
191008
191014
  keryx review slice [--ref <base>] [--diff <file|->] [--context <n>]
package/dist/core.js CHANGED
@@ -25202,8 +25202,6 @@ var init_config_dir = __esm(() => {
25202
25202
  });
25203
25203
 
25204
25204
  // src/flow/service.ts
25205
- init_fs();
25206
- init_validator();
25207
25205
  var exports_service2 = {};
25208
25206
  __export(exports_service2, {
25209
25207
  AC_CHECK_TOKEN_BUDGET: () => AC_CHECK_TOKEN_BUDGET,
@@ -25275,6 +25273,139 @@ __export(exports_service2, {
25275
25273
  validateCriterionName: () => validateCriterionName,
25276
25274
  writeAcCheckCache: () => writeAcCheckCache
25277
25275
  });
25276
+
25277
+ // src/gdgraph/service.ts
25278
+ var exports_service5 = {};
25279
+ __export(exports_service5, {
25280
+ UnknownGraphTargetError: () => UnknownGraphTargetError,
25281
+ buildAffectedReport: () => buildAffectedReport,
25282
+ checkGraphStaleness: () => checkGraphStaleness,
25283
+ createGdgraphService: () => createGdgraphService,
25284
+ estimateTokens: () => estimateTokens2
25285
+ });
25286
+
25287
+ // src/health/service.ts
25288
+ var exports_service7 = {};
25289
+ __export(exports_service7, {
25290
+ createCodeHealthService: () => createCodeHealthService,
25291
+ gateExitCode: () => gateExitCode,
25292
+ readWikiFreshnessMetric: () => readWikiFreshnessMetric
25293
+ });
25294
+
25295
+ // src/testing/service.ts
25296
+ var exports_service6 = {};
25297
+ __export(exports_service6, {
25298
+ analyzeTestingProject: () => analyzeTestingProject,
25299
+ buildRelatedTestsReport: () => buildRelatedTestsReport,
25300
+ computeTestingContext: () => computeTestingContext,
25301
+ findRelatedTests: () => findRelatedTests,
25302
+ loadCompatibleTestingReport: () => loadCompatibleTestingReport,
25303
+ loadTestingConfig: () => loadTestingConfig,
25304
+ loadTestingContext: () => loadTestingContext,
25305
+ loadTestingReport: () => loadTestingReport,
25306
+ relatedTestsInContext: () => relatedTestsInContext,
25307
+ runTesting: () => runTesting,
25308
+ selectChangedTests: () => selectChangedTests,
25309
+ testingDataRoot: () => testingDataRoot
25310
+ });
25311
+
25312
+ // src/impact-evidence/index.ts
25313
+ var exports_impact_evidence = {};
25314
+ __export(exports_impact_evidence, {
25315
+ IMPACT_EVIDENCE_HOOK_ID: () => IMPACT_EVIDENCE_HOOK_ID,
25316
+ appendLogRecord: () => appendLogRecord,
25317
+ computeImpactEvidence: () => computeImpactEvidence,
25318
+ createImpactEvidenceProvider: () => createImpactEvidenceProvider,
25319
+ hostDeliveryStatus: () => hostDeliveryStatus,
25320
+ impactEvidenceDataRoot: () => impactEvidenceDataRoot,
25321
+ impactEvidenceHookClass: () => impactEvidenceHookClass,
25322
+ loadSessionState: () => loadSessionState,
25323
+ logPath: () => logPath,
25324
+ normalizeRequestFiles: () => normalizeRequestFiles,
25325
+ readLogRecords: () => readLogRecords,
25326
+ renderEvidenceBlock: () => renderEvidenceBlock,
25327
+ sanitizeSessionId: () => sanitizeSessionId,
25328
+ saveSessionState: () => saveSessionState
25329
+ });
25330
+
25331
+ // src/job/service.ts
25332
+ var exports_service8 = {};
25333
+ __export(exports_service8, {
25334
+ createJobService: () => createJobService
25335
+ });
25336
+
25337
+ // src/sac/service.ts
25338
+ var exports_service9 = {};
25339
+ __export(exports_service9, {
25340
+ POLICY_EXPERIMENT_SANDBOX_PROFILE: () => POLICY_EXPERIMENT_SANDBOX_PROFILE,
25341
+ SEED_TEXT_MAX_LENGTH: () => SEED_TEXT_MAX_LENGTH,
25342
+ SLATE_SEED_KINDS: () => SLATE_SEED_KINDS,
25343
+ WorkspaceService: () => WorkspaceService,
25344
+ WorkspaceServiceError: () => WorkspaceServiceError,
25345
+ buildPolicyCorpus: () => buildPolicyCorpus,
25346
+ closeExternalSlate: () => closeExternalSlate,
25347
+ createHarnessProposalLifecycleService: () => createHarnessProposalLifecycleService,
25348
+ createLocalCollaborationService: () => createLocalCollaborationService,
25349
+ createLocalFwkReadService: () => createLocalFwkReadService,
25350
+ createLocalProposalLifecycleService: () => createLocalProposalLifecycleService,
25351
+ defaultPolicyExperimentConfig: () => defaultPolicyExperimentConfig,
25352
+ evaluatePolicyExperiment: () => evaluatePolicyExperiment,
25353
+ findSession: () => findSession,
25354
+ formatPolicyEvaluationReport: () => formatPolicyEvaluationReport,
25355
+ hashAccessReceipt: () => hashAccessReceipt,
25356
+ hashVerifiedTaskOutcome: () => hashVerifiedTaskOutcome,
25357
+ isExternalSlateStale: () => isExternalSlateStale,
25358
+ isSlateSeedKind: () => isSlateSeedKind,
25359
+ listWorkspaceViews: () => listWorkspaceViews,
25360
+ localWorkspaceAuthorizationServer: () => localWorkspaceAuthorizationServer,
25361
+ lookupWorkspace: () => lookupWorkspace,
25362
+ newWorkspaceId: () => newWorkspaceId,
25363
+ normalizeCollaborationResult: () => normalizeCollaborationResult,
25364
+ normalizeFwkResult: () => normalizeFwkResult,
25365
+ normalizeProposalLifecycleResult: () => normalizeProposalLifecycleResult,
25366
+ normalizeWorkspaceReference: () => normalizeWorkspaceReference,
25367
+ proposalNotePath: () => proposalNotePath,
25368
+ readExternalSlate: () => readExternalSlate,
25369
+ reclaimStaleExternalSlates: () => reclaimStaleExternalSlates,
25370
+ redactSensitiveText: () => redactSensitiveText,
25371
+ requireWorkspaceReference: () => requireWorkspaceReference,
25372
+ resolveOrCreateWorkspace: () => resolveOrCreateWorkspace,
25373
+ resolvePolicyExperiment: () => resolvePolicyExperiment,
25374
+ rollbackPolicyExperiment: () => rollbackPolicyExperiment,
25375
+ sealAccessReceipt: () => sealAccessReceipt,
25376
+ sessionEvidenceRef: () => sessionEvidenceRef,
25377
+ verifyAccessReceiptLedger: () => verifyAccessReceiptLedger,
25378
+ writeExternalSlate: () => writeExternalSlate
25379
+ });
25380
+
25381
+ // src/standard/service.ts
25382
+ var exports_service10 = {};
25383
+ __export(exports_service10, {
25384
+ HELP_DEFAULT_COLUMNS: () => HELP_DEFAULT_COLUMNS,
25385
+ HELP_GROUPS: () => HELP_GROUPS,
25386
+ HELP_GROUP_ORDER: () => HELP_GROUP_ORDER,
25387
+ HIDDEN_FROM_HELP: () => HIDDEN_FROM_HELP,
25388
+ allHelpTokens: () => allHelpTokens,
25389
+ closestHelpTopics: () => closestHelpTopics,
25390
+ entriesInGroup: () => entriesInGroup,
25391
+ findCliEntry: () => findCliEntry,
25392
+ findEntry: () => findEntry,
25393
+ findSlashEntry: () => findSlashEntry,
25394
+ groupBySlug: () => groupBySlug,
25395
+ renderCliGroupHelp: () => renderCliGroupHelp,
25396
+ renderCommandsByTaskMarkdown: () => renderCommandsByTaskMarkdown,
25397
+ renderEntryDetail: () => renderEntryDetail,
25398
+ renderGroupedCliHelp: () => renderGroupedCliHelp,
25399
+ renderGroupedNamedHelp: () => renderGroupedNamedHelp,
25400
+ renderGroupedSlashHelp: () => renderGroupedSlashHelp,
25401
+ runCapabilities: () => runCapabilities,
25402
+ runDoctor: () => runDoctor,
25403
+ runValidate: () => runValidate
25404
+ });
25405
+
25406
+ // src/flow/service.ts
25407
+ init_fs();
25408
+ init_validator();
25278
25409
  import { mkdir as mkdir12, readFile as readFile29 } from "fs/promises";
25279
25410
  import path57 from "path";
25280
25411
 
@@ -30169,16 +30300,6 @@ async function acCriterionKnown(input) {
30169
30300
  const known = await readAcCriteria(input.cwd, dir);
30170
30301
  return known.includes(normalized);
30171
30302
  }
30172
- // src/gdgraph/service.ts
30173
- var exports_service5 = {};
30174
- __export(exports_service5, {
30175
- UnknownGraphTargetError: () => UnknownGraphTargetError,
30176
- buildAffectedReport: () => buildAffectedReport,
30177
- checkGraphStaleness: () => checkGraphStaleness,
30178
- createGdgraphService: () => createGdgraphService,
30179
- estimateTokens: () => estimateTokens2
30180
- });
30181
-
30182
30303
  // src/gdgraph/build.ts
30183
30304
  import { mkdir as mkdir22, readdir as readdir14, readFile as readFile41, writeFile as writeFile16 } from "fs/promises";
30184
30305
  import { existsSync as existsSync7 } from "fs";
@@ -31836,12 +31957,6 @@ function createGdgraphService() {
31836
31957
  // src/health/service.ts
31837
31958
  init_fs();
31838
31959
  init_json();
31839
- var exports_service7 = {};
31840
- __export(exports_service7, {
31841
- createCodeHealthService: () => createCodeHealthService,
31842
- gateExitCode: () => gateExitCode,
31843
- readWikiFreshnessMetric: () => readWikiFreshnessMetric
31844
- });
31845
31960
  import path104 from "path";
31846
31961
 
31847
31962
  // src/health/config.ts
@@ -33241,21 +33356,6 @@ var typescriptAdapter = {
33241
33356
  // src/testing/service.ts
33242
33357
  init_fs();
33243
33358
  init_contained_write();
33244
- var exports_service6 = {};
33245
- __export(exports_service6, {
33246
- analyzeTestingProject: () => analyzeTestingProject,
33247
- buildRelatedTestsReport: () => buildRelatedTestsReport,
33248
- computeTestingContext: () => computeTestingContext,
33249
- findRelatedTests: () => findRelatedTests,
33250
- loadCompatibleTestingReport: () => loadCompatibleTestingReport,
33251
- loadTestingConfig: () => loadTestingConfig,
33252
- loadTestingContext: () => loadTestingContext,
33253
- loadTestingReport: () => loadTestingReport,
33254
- relatedTestsInContext: () => relatedTestsInContext,
33255
- runTesting: () => runTesting,
33256
- selectChangedTests: () => selectChangedTests,
33257
- testingDataRoot: () => testingDataRoot
33258
- });
33259
33359
  import { existsSync as existsSync12 } from "fs";
33260
33360
  import { readFile as readFile51, readdir as readdir16 } from "fs/promises";
33261
33361
  import path100 from "path";
@@ -35377,25 +35477,6 @@ function createCodeHealthService() {
35377
35477
  }
35378
35478
  };
35379
35479
  }
35380
- // src/impact-evidence/index.ts
35381
- var exports_impact_evidence = {};
35382
- __export(exports_impact_evidence, {
35383
- IMPACT_EVIDENCE_HOOK_ID: () => IMPACT_EVIDENCE_HOOK_ID,
35384
- appendLogRecord: () => appendLogRecord,
35385
- computeImpactEvidence: () => computeImpactEvidence,
35386
- createImpactEvidenceProvider: () => createImpactEvidenceProvider,
35387
- hostDeliveryStatus: () => hostDeliveryStatus,
35388
- impactEvidenceDataRoot: () => impactEvidenceDataRoot,
35389
- impactEvidenceHookClass: () => impactEvidenceHookClass,
35390
- loadSessionState: () => loadSessionState,
35391
- logPath: () => logPath,
35392
- normalizeRequestFiles: () => normalizeRequestFiles,
35393
- readLogRecords: () => readLogRecords,
35394
- renderEvidenceBlock: () => renderEvidenceBlock,
35395
- sanitizeSessionId: () => sanitizeSessionId,
35396
- saveSessionState: () => saveSessionState
35397
- });
35398
-
35399
35480
  // src/impact-evidence/types.ts
35400
35481
  var IMPACT_EVIDENCE_HOOK_ID = "keryx.impact-evidence";
35401
35482
  // src/impact-evidence/evidence.ts
@@ -35869,10 +35950,6 @@ function hostDeliveryStatus() {
35869
35950
  }
35870
35951
  // src/job/service.ts
35871
35952
  init_fs();
35872
- var exports_service8 = {};
35873
- __export(exports_service8, {
35874
- createJobService: () => createJobService
35875
- });
35876
35953
  import { copyFile, mkdir as mkdir30 } from "fs/promises";
35877
35954
  import path109 from "path";
35878
35955
 
@@ -36291,50 +36368,6 @@ function createJobService(deps) {
36291
36368
  // src/core.ts
36292
36369
  init_service3();
36293
36370
 
36294
- // src/sac/service.ts
36295
- var exports_service9 = {};
36296
- __export(exports_service9, {
36297
- POLICY_EXPERIMENT_SANDBOX_PROFILE: () => POLICY_EXPERIMENT_SANDBOX_PROFILE,
36298
- SEED_TEXT_MAX_LENGTH: () => SEED_TEXT_MAX_LENGTH,
36299
- SLATE_SEED_KINDS: () => SLATE_SEED_KINDS,
36300
- WorkspaceService: () => WorkspaceService,
36301
- WorkspaceServiceError: () => WorkspaceServiceError,
36302
- buildPolicyCorpus: () => buildPolicyCorpus,
36303
- closeExternalSlate: () => closeExternalSlate,
36304
- createHarnessProposalLifecycleService: () => createHarnessProposalLifecycleService,
36305
- createLocalCollaborationService: () => createLocalCollaborationService,
36306
- createLocalFwkReadService: () => createLocalFwkReadService,
36307
- createLocalProposalLifecycleService: () => createLocalProposalLifecycleService,
36308
- defaultPolicyExperimentConfig: () => defaultPolicyExperimentConfig,
36309
- evaluatePolicyExperiment: () => evaluatePolicyExperiment,
36310
- findSession: () => findSession,
36311
- formatPolicyEvaluationReport: () => formatPolicyEvaluationReport,
36312
- hashAccessReceipt: () => hashAccessReceipt,
36313
- hashVerifiedTaskOutcome: () => hashVerifiedTaskOutcome,
36314
- isExternalSlateStale: () => isExternalSlateStale,
36315
- isSlateSeedKind: () => isSlateSeedKind,
36316
- listWorkspaceViews: () => listWorkspaceViews,
36317
- localWorkspaceAuthorizationServer: () => localWorkspaceAuthorizationServer,
36318
- lookupWorkspace: () => lookupWorkspace,
36319
- newWorkspaceId: () => newWorkspaceId,
36320
- normalizeCollaborationResult: () => normalizeCollaborationResult,
36321
- normalizeFwkResult: () => normalizeFwkResult,
36322
- normalizeProposalLifecycleResult: () => normalizeProposalLifecycleResult,
36323
- normalizeWorkspaceReference: () => normalizeWorkspaceReference,
36324
- proposalNotePath: () => proposalNotePath,
36325
- readExternalSlate: () => readExternalSlate,
36326
- reclaimStaleExternalSlates: () => reclaimStaleExternalSlates,
36327
- redactSensitiveText: () => redactSensitiveText,
36328
- requireWorkspaceReference: () => requireWorkspaceReference,
36329
- resolveOrCreateWorkspace: () => resolveOrCreateWorkspace,
36330
- resolvePolicyExperiment: () => resolvePolicyExperiment,
36331
- rollbackPolicyExperiment: () => rollbackPolicyExperiment,
36332
- sealAccessReceipt: () => sealAccessReceipt,
36333
- sessionEvidenceRef: () => sessionEvidenceRef,
36334
- verifyAccessReceiptLedger: () => verifyAccessReceiptLedger,
36335
- writeExternalSlate: () => writeExternalSlate
36336
- });
36337
-
36338
36371
  // src/sac/fwk-service.ts
36339
36372
  import { createHash as createHash23, randomUUID as randomUUID4 } from "crypto";
36340
36373
 
@@ -41685,29 +41718,6 @@ init_service2();
41685
41718
 
41686
41719
  // src/standard/service.ts
41687
41720
  init_fs();
41688
- var exports_service10 = {};
41689
- __export(exports_service10, {
41690
- HELP_DEFAULT_COLUMNS: () => HELP_DEFAULT_COLUMNS,
41691
- HELP_GROUPS: () => HELP_GROUPS,
41692
- HELP_GROUP_ORDER: () => HELP_GROUP_ORDER,
41693
- HIDDEN_FROM_HELP: () => HIDDEN_FROM_HELP,
41694
- allHelpTokens: () => allHelpTokens,
41695
- closestHelpTopics: () => closestHelpTopics,
41696
- entriesInGroup: () => entriesInGroup,
41697
- findCliEntry: () => findCliEntry,
41698
- findEntry: () => findEntry,
41699
- findSlashEntry: () => findSlashEntry,
41700
- groupBySlug: () => groupBySlug,
41701
- renderCliGroupHelp: () => renderCliGroupHelp,
41702
- renderCommandsByTaskMarkdown: () => renderCommandsByTaskMarkdown,
41703
- renderEntryDetail: () => renderEntryDetail,
41704
- renderGroupedCliHelp: () => renderGroupedCliHelp,
41705
- renderGroupedNamedHelp: () => renderGroupedNamedHelp,
41706
- renderGroupedSlashHelp: () => renderGroupedSlashHelp,
41707
- runCapabilities: () => runCapabilities,
41708
- runDoctor: () => runDoctor,
41709
- runValidate: () => runValidate
41710
- });
41711
41721
  import path129 from "path";
41712
41722
  import { readFile as readFile70 } from "fs/promises";
41713
41723
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mrciphersmith/keryx",
3
- "version": "0.3.92",
3
+ "version": "0.3.93",
4
4
  "description": "Version-controlled project context for AI coding agents: code graph, architecture wiki, project memory, relevant tests, quality signals, and task flows.",
5
5
  "private": false,
6
6
  "publishConfig": {