@jawkx1999/opencr 0.1.0-alpha.3 → 0.1.0-alpha.4

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 (32) hide show
  1. package/dist/client/assets/index-C9jeaZcr.css +1 -0
  2. package/dist/client/assets/index-DF6LDO7P.js +1978 -0
  3. package/dist/client/index.html +3 -3
  4. package/dist/server/cli/index.js +13 -19
  5. package/dist/server/cli/index.js.map +1 -1
  6. package/dist/server/core/agents/opencode.js +685 -0
  7. package/dist/server/core/agents/opencode.js.map +1 -0
  8. package/dist/server/core/reviewDiagnostics.js +116 -0
  9. package/dist/server/core/reviewDiagnostics.js.map +1 -0
  10. package/dist/server/core/reviewPayload.js +3 -0
  11. package/dist/server/core/reviewPayload.js.map +1 -1
  12. package/dist/server/core/reviewRequest.js +4 -1
  13. package/dist/server/core/reviewRequest.js.map +1 -1
  14. package/dist/server/core/reviewSource/commitish.js +1 -1
  15. package/dist/server/core/reviewSource/commitish.js.map +1 -1
  16. package/dist/server/core/reviewSource/githubPr.js +31 -0
  17. package/dist/server/core/reviewSource/githubPr.js.map +1 -1
  18. package/dist/server/core/reviewSource/index.js +2 -2
  19. package/dist/server/core/reviewSource/index.js.map +1 -1
  20. package/dist/server/core/server.js +2 -0
  21. package/dist/server/core/server.js.map +1 -1
  22. package/dist/server/core/workspace/repository.js +234 -144
  23. package/dist/server/core/workspace/repository.js.map +1 -1
  24. package/dist/server/server/app.js +158 -1
  25. package/dist/server/server/app.js.map +1 -1
  26. package/dist/server/shared/types.js +1 -1
  27. package/dist/server/shared/types.js.map +1 -1
  28. package/package.json +5 -4
  29. package/dist/client/assets/index-BnzvJWAx.js +0 -1974
  30. package/dist/client/assets/index-FRegO2ve.css +0 -1
  31. package/dist/server/cli/utils.js +0 -2
  32. package/dist/server/cli/utils.js.map +0 -1
@@ -3,9 +3,9 @@
3
3
  <head>
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
- <title>opencr</title>
7
- <script type="module" crossorigin src="/assets/index-BnzvJWAx.js"></script>
8
- <link rel="stylesheet" crossorigin href="/assets/index-FRegO2ve.css">
6
+ <title>OpenCr</title>
7
+ <script type="module" crossorigin src="/assets/index-DF6LDO7P.js"></script>
8
+ <link rel="stylesheet" crossorigin href="/assets/index-C9jeaZcr.css">
9
9
  </head>
10
10
  <body>
11
11
  <div id="root"></div>
@@ -6,11 +6,18 @@ import { execSync } from 'node:child_process';
6
6
  import { Command, InvalidArgumentError } from 'commander';
7
7
  import { Effect } from 'effect';
8
8
  import { resolveReviewRequest, ReviewRequestError } from '../core/reviewRequest.js';
9
+ import { createAgentService } from '../core/agents/opencode.js';
9
10
  import { loadReviewPayload } from '../core/reviewPayload.js';
10
11
  import { startDebugServer, ServerStartError } from '../core/server.js';
11
12
  import { buildReviewIdentity } from '../core/workspace/identity.js';
12
13
  import { ReviewWorkspaceRepository } from '../core/workspace/repository.js';
13
14
  import { DEFAULT_DIFF_VIEW_MODE, normalizeDiffViewMode } from '../shared/diffMode.js';
15
+ const resolveAgentRepositoryPath = (request) => {
16
+ if (request.source.kind === 'git') {
17
+ return request.source.repositoryPath;
18
+ }
19
+ return request.invocation.cwd;
20
+ };
14
21
  const findPackageJsonPath = () => {
15
22
  const startDirectory = dirname(fileURLToPath(import.meta.url));
16
23
  for (let index = 0; index < 6; index += 1) {
@@ -96,32 +103,18 @@ program
96
103
  };
97
104
  const resolvedRequest = await Effect.runPromise(resolveReviewRequest(requestInput));
98
105
  const reviewPayload = await loadReviewPayload(resolvedRequest.request, resolvedRequest.initialPatch);
106
+ const agentService = createAgentService(resolveAgentRepositoryPath(resolvedRequest.request));
99
107
  const reviewIdentity = buildReviewIdentity(resolvedRequest.request, reviewPayload.diff.patch);
100
108
  workspaceRepository = new ReviewWorkspaceRepository();
101
109
  const repository = workspaceRepository;
102
- const toWorkspaceHydration = () => {
103
- const hydration = repository.getHydration({
104
- targetId: reviewIdentity.targetId,
105
- snapshotId: reviewIdentity.snapshotId,
106
- });
107
- if (resolvedRequest.request.behavior.clearArtifacts && hydration.restoreKind !== 'exact') {
108
- return {
109
- ...hydration,
110
- restoreKind: 'clean',
111
- previousWorkspace: null,
112
- };
113
- }
114
- return hydration;
115
- };
116
- repository.initializeSession({
117
- identity: reviewIdentity,
118
- clearSnapshotWorkspace: resolvedRequest.request.behavior.clearArtifacts,
119
- });
110
+ if (resolvedRequest.request.behavior.clearArtifacts) {
111
+ repository.clearWorkspace(reviewIdentity.targetId);
112
+ }
120
113
  const started = await startDebugServer({
121
114
  request: resolvedRequest.request,
122
115
  getReviewPayload: () => ({
123
116
  ...reviewPayload,
124
- workspace: toWorkspaceHydration(),
117
+ workspace: repository.loadWorkspace(reviewIdentity.targetId),
125
118
  }),
126
119
  saveWorkspace: (input) => {
127
120
  return repository.saveWorkspace({
@@ -131,6 +124,7 @@ program
131
124
  workspace: input.workspace,
132
125
  });
133
126
  },
127
+ agentService,
134
128
  });
135
129
  console.log(`\nopencr server started on ${started.debugState.server.url}`);
136
130
  console.log(`Review label: ${started.debugState.request.reviewLabel}`);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":"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"}