@printpractical/cruze 0.0.8 → 0.0.10
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/README.md +17 -13
- package/dist/adapters/inbound/cli/cli_context.js +6 -0
- package/dist/adapters/inbound/cli/commands/code.js +2 -1
- package/dist/adapters/inbound/cli/commands/diff.js +23 -0
- package/dist/adapters/inbound/cli/commands/documents.js +1 -1
- package/dist/adapters/inbound/cli/commands/show.js +72 -3
- package/dist/adapters/inbound/cli/commands/status.js +7 -3
- package/dist/adapters/inbound/cli/commands.js +9 -3
- package/dist/adapters/inbound/cli/parse_command.js +8 -0
- package/dist/adapters/outbound/git_repository.js +49 -7
- package/dist/adapters/outbound/project_root.js +13 -0
- package/dist/app/ports/repository.js +4 -0
- package/dist/app/use_cases/approve_artifact.js +18 -10
- package/dist/app/use_cases/check_code.js +5 -3
- package/dist/app/use_cases/journal_events.js +6 -2
- package/dist/app/use_cases/new_project_doc.js +10 -2
- package/dist/app/use_cases/project_status.js +4 -1
- package/dist/app/use_cases/run_review.js +10 -2
- package/dist/app/use_cases/show_elements.js +18 -0
- package/dist/app/use_cases/show_notes.js +11 -0
- package/dist/app/use_cases/show_scope.js +17 -1
- package/dist/app/use_cases/upstream_diff.js +55 -0
- package/dist/domain/approvals/rebase.js +39 -0
- package/dist/domain/approvals/upstream_text.js +36 -0
- package/dist/domain/check/budget_text.js +43 -6
- package/dist/domain/check/check_source.js +20 -3
- package/dist/domain/check/decision_comments.js +38 -0
- package/dist/domain/config.js +12 -0
- package/dist/domain/decision_citations.js +62 -0
- package/dist/domain/edits/agents_file.js +15 -1
- package/dist/domain/ids.js +3 -1
- package/dist/domain/journal.js +16 -3
- package/dist/domain/land/merge_plan.js +7 -2
- package/dist/domain/line_diff.js +56 -0
- package/dist/domain/project/element_lookup.js +124 -0
- package/dist/domain/project/living_model.js +2 -1
- package/dist/domain/project/notes.js +74 -0
- package/dist/domain/project/scope_view.js +20 -4
- package/dist/domain/skill_budget.js +36 -0
- package/dist/domain/status/next_step.js +52 -7
- package/dist/domain/status/pending_rethink.js +22 -0
- package/dist/domain/status/verification.js +12 -0
- package/dist/domain/status/work_status.js +17 -2
- package/dist/domain/validation/decision_rules.js +76 -0
- package/dist/domain/validation/delta_rules.js +2 -0
- package/dist/domain/validation/future_rules.js +40 -0
- package/dist/domain/validation/living_rules.js +2 -0
- package/dist/domain/validation/plan_rules.js +1 -1
- package/dist/domain/validation/validate_project.js +4 -0
- package/dist/domain/validation/vision_rules.js +41 -0
- package/dist/domain/versions/rule_versions.js +3 -0
- package/dist/main.js +8 -4
- package/package.json +1 -1
- package/skills/architect/SKILL.md +6 -2
- package/skills/architect/feature.md +6 -4
- package/skills/architect/project.md +2 -2
- package/skills/behavioural-testing/SKILL.md +3 -2
- package/skills/behavioural-testing/fakes.md +3 -3
- package/skills/build/SKILL.md +3 -2
- package/skills/envision/SKILL.md +3 -2
- package/skills/envision/feature.md +3 -1
- package/skills/envision/intake.md +28 -0
- package/skills/envision/possibilities.md +13 -0
- package/skills/envision/project.md +5 -3
- package/skills/explore/SKILL.md +2 -2
- package/skills/formats/SKILL.md +13 -2
- package/skills/formats/reference/architecture.md +8 -4
- package/skills/formats/reference/config.md +9 -4
- package/skills/formats/reference/durable-docs.md +4 -1
- package/skills/formats/reference/work-items.md +1 -1
- package/skills/formats/templates/vision.md +12 -0
- package/skills/grilling/SKILL.md +10 -0
- package/skills/hexagonal-design/SKILL.md +2 -2
- package/skills/hexagonal-design/languages/rust.md +2 -1
- package/skills/hexagonal-design/runtime.md +1 -0
- package/skills/land/SKILL.md +6 -2
- package/skills/plan/SKILL.md +15 -5
- package/skills/plan/tasks.md +4 -4
- package/skills/realign/SKILL.md +5 -3
- package/skills/realign/notes/0.0.10.md +131 -0
- package/skills/realign/notes/0.0.2.md +1 -1
- package/skills/realign/notes/0.0.6.md +1 -1
- package/skills/realign/notes/0.0.8.md +2 -2
- package/skills/realign/notes/0.0.9.md +59 -0
- package/skills/realign/notes.md +2 -0
- package/skills/research/SKILL.md +3 -2
- package/skills/rethink/SKILL.md +6 -4
- package/skills/rethink/levels.md +8 -8
- package/skills/roadmap/SKILL.md +2 -1
- package/skills/roles/SKILL.md +4 -4
- package/skills/roles/auditor.md +1 -1
- package/skills/roles/code-reviewer.md +5 -4
- package/skills/roles/design-reviewer.md +5 -29
- package/skills/roles/design-rubric.md +40 -0
- package/skills/roles/plan-rubric.md +11 -0
- package/skills/roles/surveyor.md +3 -2
- package/skills/roles/verifier.md +2 -0
- package/skills/triage/SKILL.md +1 -1
- package/skills/verify/SKILL.md +3 -3
- package/src/adapters/inbound/cli/cli_context.ts +6 -0
- package/src/adapters/inbound/cli/commands/code.ts +2 -1
- package/src/adapters/inbound/cli/commands/diff.ts +23 -0
- package/src/adapters/inbound/cli/commands/documents.ts +1 -1
- package/src/adapters/inbound/cli/commands/show.ts +72 -3
- package/src/adapters/inbound/cli/commands/status.ts +7 -3
- package/src/adapters/inbound/cli/commands.ts +9 -3
- package/src/adapters/inbound/cli/parse_command.ts +8 -0
- package/src/adapters/outbound/git_repository.ts +49 -7
- package/src/adapters/outbound/project_root.ts +13 -0
- package/src/app/ports/repository.ts +4 -0
- package/src/app/use_cases/approve_artifact.ts +18 -10
- package/src/app/use_cases/check_code.ts +5 -3
- package/src/app/use_cases/journal_events.ts +6 -2
- package/src/app/use_cases/new_project_doc.ts +10 -2
- package/src/app/use_cases/project_status.ts +4 -1
- package/src/app/use_cases/run_review.ts +10 -2
- package/src/app/use_cases/show_elements.ts +18 -0
- package/src/app/use_cases/show_notes.ts +11 -0
- package/src/app/use_cases/show_scope.ts +17 -1
- package/src/app/use_cases/upstream_diff.ts +55 -0
- package/src/domain/approvals/rebase.ts +39 -0
- package/src/domain/approvals/upstream_text.ts +36 -0
- package/src/domain/check/budget_text.ts +43 -6
- package/src/domain/check/check_source.ts +20 -3
- package/src/domain/check/decision_comments.ts +38 -0
- package/src/domain/config.ts +12 -0
- package/src/domain/decision_citations.ts +62 -0
- package/src/domain/edits/agents_file.ts +15 -1
- package/src/domain/ids.ts +3 -1
- package/src/domain/journal.ts +16 -3
- package/src/domain/land/merge_plan.ts +7 -2
- package/src/domain/line_diff.ts +56 -0
- package/src/domain/project/element_lookup.ts +124 -0
- package/src/domain/project/living_model.ts +2 -1
- package/src/domain/project/notes.ts +74 -0
- package/src/domain/project/scope_view.ts +20 -4
- package/src/domain/skill_budget.ts +36 -0
- package/src/domain/status/next_step.ts +52 -7
- package/src/domain/status/pending_rethink.ts +22 -0
- package/src/domain/status/verification.ts +12 -0
- package/src/domain/status/work_status.ts +17 -2
- package/src/domain/validation/decision_rules.ts +76 -0
- package/src/domain/validation/delta_rules.ts +2 -0
- package/src/domain/validation/future_rules.ts +40 -0
- package/src/domain/validation/living_rules.ts +2 -0
- package/src/domain/validation/plan_rules.ts +1 -1
- package/src/domain/validation/validate_project.ts +4 -0
- package/src/domain/validation/vision_rules.ts +41 -0
- package/src/domain/versions/rule_versions.ts +3 -0
- package/src/main.ts +8 -4
- package/templates/init/AGENTS.md +1 -1
- package/templates/init/config.yaml +5 -4
package/src/main.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
// Composition root: the only place that constructs adapters.
|
|
3
|
-
import { basename } from "node:path";
|
|
3
|
+
import { basename, relative } from "node:path";
|
|
4
4
|
import { runCli } from "./adapters/inbound/cli/run_cli.ts";
|
|
5
5
|
import { GitRepository } from "./adapters/outbound/git_repository.ts";
|
|
6
6
|
import { NodeProjectFiles } from "./adapters/outbound/node_project_files.ts";
|
|
7
7
|
import { PackageBundle } from "./adapters/outbound/package_bundle.ts";
|
|
8
|
+
import { findProjectRoot } from "./adapters/outbound/project_root.ts";
|
|
8
9
|
import { ProcessAgentRunner } from "./adapters/outbound/process_agent_runner.ts";
|
|
9
10
|
import { SystemClock } from "./adapters/outbound/system_clock.ts";
|
|
10
11
|
import { DefaultAnswerPrompter, TerminalPrompter } from "./adapters/outbound/terminal_prompter.ts";
|
|
@@ -16,18 +17,21 @@ process.stdout.on("error", (error: NodeJS.ErrnoException) => {
|
|
|
16
17
|
});
|
|
17
18
|
|
|
18
19
|
const cwd = process.cwd();
|
|
20
|
+
// Every command but init works on the project that holds the working directory, so it runs from any subdirectory.
|
|
21
|
+
const root = process.argv[2] === "init" ? cwd : (findProjectRoot(cwd) ?? cwd);
|
|
19
22
|
const exitCode = await runCli(
|
|
20
23
|
process.argv.slice(2),
|
|
21
24
|
{
|
|
22
|
-
files: new NodeProjectFiles(
|
|
25
|
+
files: new NodeProjectFiles(root),
|
|
23
26
|
bundle: await PackageBundle.locate(),
|
|
24
27
|
clock: new SystemClock(),
|
|
25
|
-
repository: new GitRepository(
|
|
28
|
+
repository: new GitRepository(root),
|
|
26
29
|
interactivePrompter: new TerminalPrompter(),
|
|
27
30
|
unattendedPrompter: new DefaultAnswerPrompter(),
|
|
28
|
-
runner: new ProcessAgentRunner(
|
|
31
|
+
runner: new ProcessAgentRunner(root),
|
|
29
32
|
interactive: process.stdin.isTTY === true,
|
|
30
33
|
directoryName: basename(cwd),
|
|
34
|
+
workingDirectory: relative(root, cwd).split("\\").join("/"),
|
|
31
35
|
},
|
|
32
36
|
{
|
|
33
37
|
stdout: (text) => process.stdout.write(`${text}\n`),
|
package/templates/init/AGENTS.md
CHANGED
|
@@ -25,4 +25,4 @@ Not defined yet. `cruze land` fills this in from the module map in `docs/archite
|
|
|
25
25
|
|
|
26
26
|
## Known pitfalls
|
|
27
27
|
|
|
28
|
-
None recorded yet. `land` adds a line here when the same review finding or defect happens twice.
|
|
28
|
+
None recorded yet. `land` adds a line here when the same review finding or defect about this project's code happens twice.
|
|
@@ -15,11 +15,12 @@ tracker: markdown
|
|
|
15
15
|
source: []
|
|
16
16
|
tests: []
|
|
17
17
|
|
|
18
|
-
# Budgets enforced by `cruze check
|
|
19
|
-
#
|
|
18
|
+
# Budgets enforced by `cruze check`: a backstop against a file that has
|
|
19
|
+
# outgrown one responsibility, not a size to design to. List a file under
|
|
20
|
+
# exceptions, with a reason, to allow it past a budget.
|
|
20
21
|
check:
|
|
21
|
-
max_lines:
|
|
22
|
-
max_types:
|
|
22
|
+
max_lines: 600
|
|
23
|
+
max_types: 12
|
|
23
24
|
exceptions: []
|
|
24
25
|
|
|
25
26
|
# Layer rules, written by project-scope architecture design from the module map.
|