Skip to content

Commit 2ebd043

Browse files
committed
refactor: use repository selectors in service requests
1 parent 07d8668 commit 2ebd043

42 files changed

Lines changed: 191 additions & 151 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/codealmanac/cli/dispatch/config.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212

1313
def load_cli_config(app: CodeAlmanac, wiki: str | None) -> CodeAlmanacConfig:
14-
return app.config.load(LoadConfigRequest(cwd=Path.cwd(), wiki=wiki))
14+
return app.config.load(LoadConfigRequest(cwd=Path.cwd(), repository_name=wiki))
1515

1616

1717
def load_user_cli_config(app: CodeAlmanac) -> CodeAlmanacConfig:

src/codealmanac/cli/dispatch/diagnostics.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88

99
def dispatch_doctor(args: argparse.Namespace, app: CodeAlmanac) -> int:
10-
report = app.diagnostics.check(DoctorRequest(cwd=Path.cwd(), wiki=args.wiki))
10+
report = app.diagnostics.check(
11+
DoctorRequest(cwd=Path.cwd(), repository_name=args.wiki)
12+
)
1113
render_doctor(report, json_output=args.json)
1214
return 0

src/codealmanac/cli/dispatch/jobs.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,30 +20,30 @@
2020
def dispatch_jobs(args: argparse.Namespace, app: CodeAlmanac) -> int:
2121
if args.jobs_command == "show":
2222
record = app.runs.show(
23-
ShowRunRequest(wiki=args.wiki, run_id=args.run_id)
23+
ShowRunRequest(repository_name=args.wiki, run_id=args.run_id)
2424
)
2525
render_run(record, json_output=args.json)
2626
return 0
2727
if args.jobs_command == "logs":
2828
events = app.runs.log(
29-
ReadRunLogRequest(wiki=args.wiki, run_id=args.run_id)
29+
ReadRunLogRequest(repository_name=args.wiki, run_id=args.run_id)
3030
)
3131
render_run_log(events, json_output=args.json)
3232
return 0
3333
if args.jobs_command == "attach":
3434
updates = app.runs.stream_attach(
35-
StreamRunAttachRequest(wiki=args.wiki, run_id=args.run_id)
35+
StreamRunAttachRequest(repository_name=args.wiki, run_id=args.run_id)
3636
)
3737
render_run_attach_stream(updates, json_output=args.json)
3838
return 0
3939
if args.jobs_command == "cancel":
4040
result = app.runs.cancel(
41-
CancelRunRequest(wiki=args.wiki, run_id=args.run_id)
41+
CancelRunRequest(repository_name=args.wiki, run_id=args.run_id)
4242
)
4343
render_run_cancel(result, json_output=args.json)
4444
return 0
4545
records = app.runs.list(
46-
ListRunsRequest(wiki=args.wiki, limit=args.limit)
46+
ListRunsRequest(repository_name=args.wiki, limit=args.limit)
4747
)
4848
render_runs(records, json_output=args.json)
4949
return 0

src/codealmanac/cli/dispatch/operations.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ def dispatch_ingest(args: argparse.Namespace, app: CodeAlmanac) -> int:
1616
cli_config = load_cli_config(app, args.wiki)
1717
request = IngestRequest(
1818
cwd=Path.cwd(),
19-
wiki=args.wiki,
19+
repository_name=args.wiki,
2020
inputs=tuple(args.inputs),
2121
harness=resolve_harness(args.using, cli_config),
2222
title=args.title,
@@ -32,7 +32,7 @@ def dispatch_garden(args: argparse.Namespace, app: CodeAlmanac) -> int:
3232
cli_config = load_cli_config(app, args.wiki)
3333
request = GardenRequest(
3434
cwd=Path.cwd(),
35-
wiki=args.wiki,
35+
repository_name=args.wiki,
3636
harness=resolve_harness(args.using, cli_config),
3737
title=args.title,
3838
guidance=args.guidance,

src/codealmanac/cli/dispatch/sync.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ def dispatch_sync(args: argparse.Namespace, app: CodeAlmanac) -> int:
2020
cli_config = load_cli_config(app, args.wiki)
2121
result = app.workflows.sync.run(
2222
RunSyncRequest(
23-
wiki=args.wiki,
23+
repository_name=args.wiki,
2424
apps=parse_sync_apps(args.source_apps),
2525
harness=resolve_harness(args.using, cli_config),
2626
auto_commit=cli_config.auto_commit,
@@ -33,7 +33,7 @@ def dispatch_sync(args: argparse.Namespace, app: CodeAlmanac) -> int:
3333
def dispatch_sync_status(args: argparse.Namespace, app: CodeAlmanac) -> int:
3434
result = app.workflows.sync.status(
3535
RunSyncStatusRequest(
36-
wiki=args.wiki,
36+
repository_name=args.wiki,
3737
apps=parse_sync_apps(args.source_apps),
3838
)
3939
)

src/codealmanac/cli/dispatch/topics.py

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ def dispatch_topics(args: argparse.Namespace, app: CodeAlmanac) -> int:
2626
topic = app.topics.show(
2727
ShowTopicRequest(
2828
cwd=Path.cwd(),
29-
wiki=args.wiki,
29+
repository_name=args.wiki,
3030
slug=args.slug,
3131
include_descendants=args.descendants,
3232
)
@@ -37,7 +37,7 @@ def dispatch_topics(args: argparse.Namespace, app: CodeAlmanac) -> int:
3737
result = app.topics.create(
3838
CreateTopicRequest(
3939
cwd=Path.cwd(),
40-
wiki=args.wiki,
40+
repository_name=args.wiki,
4141
name=args.name,
4242
parents=tuple(args.parent),
4343
)
@@ -48,7 +48,7 @@ def dispatch_topics(args: argparse.Namespace, app: CodeAlmanac) -> int:
4848
result = app.topics.describe(
4949
DescribeTopicRequest(
5050
cwd=Path.cwd(),
51-
wiki=args.wiki,
51+
repository_name=args.wiki,
5252
slug=args.slug,
5353
description=args.description,
5454
)
@@ -59,7 +59,7 @@ def dispatch_topics(args: argparse.Namespace, app: CodeAlmanac) -> int:
5959
result = app.topics.link(
6060
LinkTopicRequest(
6161
cwd=Path.cwd(),
62-
wiki=args.wiki,
62+
repository_name=args.wiki,
6363
child=args.child,
6464
parent=args.parent,
6565
)
@@ -74,7 +74,7 @@ def dispatch_topic_rewrite(args: argparse.Namespace, app: CodeAlmanac) -> int:
7474
result = app.topics.unlink(
7575
UnlinkTopicRequest(
7676
cwd=Path.cwd(),
77-
wiki=args.wiki,
77+
repository_name=args.wiki,
7878
child=args.child,
7979
parent=args.parent,
8080
)
@@ -85,7 +85,7 @@ def dispatch_topic_rewrite(args: argparse.Namespace, app: CodeAlmanac) -> int:
8585
result = app.topics.rename(
8686
RenameTopicRequest(
8787
cwd=Path.cwd(),
88-
wiki=args.wiki,
88+
repository_name=args.wiki,
8989
old_slug=args.old_slug,
9090
new_slug=args.new_slug,
9191
)
@@ -96,12 +96,14 @@ def dispatch_topic_rewrite(args: argparse.Namespace, app: CodeAlmanac) -> int:
9696
result = app.topics.delete(
9797
DeleteTopicRequest(
9898
cwd=Path.cwd(),
99-
wiki=args.wiki,
99+
repository_name=args.wiki,
100100
slug=args.slug,
101101
)
102102
)
103103
render_topic_rewrite_mutation(result)
104104
return 0
105-
topics = app.topics.list(ListTopicsRequest(cwd=Path.cwd(), wiki=args.wiki))
105+
topics = app.topics.list(
106+
ListTopicsRequest(cwd=Path.cwd(), repository_name=args.wiki)
107+
)
106108
render_topics(topics)
107109
return 0

src/codealmanac/cli/dispatch/wiki.py

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ def dispatch_wiki(args: argparse.Namespace, app: CodeAlmanac) -> int:
4646
rows = app.search.search(
4747
SearchPagesRequest(
4848
cwd=Path.cwd(),
49-
wiki=args.wiki,
49+
repository_name=args.wiki,
5050
query=args.query,
5151
topics=tuple(args.topic),
5252
mentions=args.mentions,
@@ -62,24 +62,28 @@ def dispatch_wiki(args: argparse.Namespace, app: CodeAlmanac) -> int:
6262
return 0
6363
if args.command == "show":
6464
page = app.pages.show(
65-
ShowPageRequest(cwd=Path.cwd(), wiki=args.wiki, slug=args.page)
65+
ShowPageRequest(cwd=Path.cwd(), repository_name=args.wiki, slug=args.page)
6666
)
6767
render_page(page, args)
6868
return 0
6969
if args.command == "topics":
7070
return dispatch_topics(args, app)
7171
if args.command == "health":
72-
report = app.health.check(HealthCheckRequest(cwd=Path.cwd(), wiki=args.wiki))
72+
report = app.health.check(
73+
HealthCheckRequest(cwd=Path.cwd(), repository_name=args.wiki)
74+
)
7375
render_health(report, json_output=args.json)
7476
return 0
7577
if args.command == "validate":
7678
result = app.health.validate(
77-
ValidateWikiRequest(cwd=Path.cwd(), wiki=args.wiki)
79+
ValidateWikiRequest(cwd=Path.cwd(), repository_name=args.wiki)
7880
)
7981
render_validate(result, json_output=args.json)
8082
return 0 if result.ok else 1
8183
if args.command == "reindex":
82-
result = app.index.reindex(ReindexRequest(cwd=Path.cwd(), wiki=args.wiki))
84+
result = app.index.reindex(
85+
ReindexRequest(cwd=Path.cwd(), repository_name=args.wiki)
86+
)
8387
render_reindex(result, json_output=args.json)
8488
return 0
8589
if args.command == "serve":
@@ -88,7 +92,7 @@ def dispatch_wiki(args: argparse.Namespace, app: CodeAlmanac) -> int:
8892
result = app.tagging.tag(
8993
TagPageRequest(
9094
cwd=Path.cwd(),
91-
wiki=args.wiki,
95+
repository_name=args.wiki,
9296
slug=args.page,
9397
topics=tuple(args.topics),
9498
)
@@ -99,7 +103,7 @@ def dispatch_wiki(args: argparse.Namespace, app: CodeAlmanac) -> int:
99103
result = app.tagging.untag(
100104
UntagPageRequest(
101105
cwd=Path.cwd(),
102-
wiki=args.wiki,
106+
repository_name=args.wiki,
103107
slug=args.page,
104108
topics=tuple(args.topics),
105109
)

src/codealmanac/server/api_routes.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ def overview(wiki: str | None = None) -> ViewerOverview:
4040
return context.codealmanac.viewer.overview(
4141
ViewerOverviewRequest(
4242
cwd=context.cwd,
43-
wiki=context.selected_wiki(wiki),
43+
repository_name=context.selected_wiki(wiki),
4444
include_repositories=context.scope_wiki is None,
4545
)
4646
)
@@ -50,7 +50,7 @@ def page(slug: str, wiki: str | None = None) -> ViewerPage:
5050
return context.codealmanac.viewer.page(
5151
ViewerPageRequest(
5252
cwd=context.cwd,
53-
wiki=context.selected_wiki(wiki),
53+
repository_name=context.selected_wiki(wiki),
5454
slug=slug,
5555
)
5656
)
@@ -64,7 +64,7 @@ def search(
6464
return context.codealmanac.viewer.search(
6565
ViewerSearchRequest(
6666
cwd=context.cwd,
67-
wiki=context.selected_wiki(wiki),
67+
repository_name=context.selected_wiki(wiki),
6868
query=q,
6969
limit=limit,
7070
)
@@ -79,7 +79,7 @@ def file_route(
7979
return context.codealmanac.viewer.file(
8080
ViewerFileRequest(
8181
cwd=context.cwd,
82-
wiki=context.selected_wiki(wiki),
82+
repository_name=context.selected_wiki(wiki),
8383
path=path,
8484
limit=limit,
8585
)
@@ -94,7 +94,7 @@ def topic(
9494
return context.codealmanac.viewer.topic(
9595
ViewerTopicRequest(
9696
cwd=context.cwd,
97-
wiki=context.selected_wiki(wiki),
97+
repository_name=context.selected_wiki(wiki),
9898
slug=slug,
9999
include_descendants=descendants,
100100
)
@@ -105,7 +105,7 @@ def jobs(limit: int | None = None, wiki: str | None = None) -> ViewerJobs:
105105
return context.codealmanac.viewer.jobs(
106106
ViewerJobsRequest(
107107
cwd=context.cwd,
108-
wiki=context.selected_wiki(wiki),
108+
repository_name=context.selected_wiki(wiki),
109109
limit=limit,
110110
)
111111
)
@@ -115,7 +115,7 @@ def job(run_id: str, wiki: str | None = None) -> ViewerJob:
115115
return context.codealmanac.viewer.job(
116116
ViewerJobRequest(
117117
cwd=context.cwd,
118-
wiki=context.selected_wiki(wiki),
118+
repository_name=context.selected_wiki(wiki),
119119
run_id=run_id,
120120
)
121121
)

src/codealmanac/services/config/requests.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,14 @@
99

1010
class LoadConfigRequest(CodeAlmanacModel):
1111
cwd: Path
12-
wiki: str | None = Field(
12+
repository_name: str | None = Field(
1313
default=None,
1414
description="None means use config for the current repository root.",
1515
)
1616

17-
@field_validator("wiki")
17+
@field_validator("repository_name")
1818
@classmethod
19-
def require_wiki(cls, value: str | None) -> str | None:
19+
def require_repository_name(cls, value: str | None) -> str | None:
2020
if value is None:
2121
return None
2222
return required_text(value, "wiki selector")

src/codealmanac/services/config/service.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ def project_config_path(self, request: LoadConfigRequest) -> Path | None:
6666
try:
6767
repository = self.repositories.select_read_target(
6868
request.cwd,
69-
request.wiki,
69+
request.repository_name,
7070
)
7171
except (NoRepositorySelected, NotFoundError, OSError):
7272
return None

0 commit comments

Comments
 (0)