@travetto/llm-support 8.0.0-alpha.20
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 +101 -0
- package/__index__.ts +11 -0
- package/llm/consumer/INSTRUCTIONS.md +44 -0
- package/llm/maintainer/INSTRUCTIONS.md +37 -0
- package/package.json +56 -0
- package/resources/snippets/autograph-cli-orchestration.md +21 -0
- package/resources/snippets/code/aws-lambda-package-and-deploy.yml.tpl +36 -0
- package/resources/snippets/code/cache-enhancements.config.ts.tpl +6 -0
- package/resources/snippets/code/cache-enhancements.service.ts.tpl +16 -0
- package/resources/snippets/code/create-web-interceptor.ts.tpl +15 -0
- package/resources/snippets/code/create-web-route.controller.ts.tpl +15 -0
- package/resources/snippets/code/create-web-route.service.ts.tpl +8 -0
- package/resources/snippets/code/email-config.ts.tpl +6 -0
- package/resources/snippets/code/email-context-schema.ts.tpl +7 -0
- package/resources/snippets/code/email-create-template.mustache.tpl +2 -0
- package/resources/snippets/code/email-fixture.json.tpl +6 -0
- package/resources/snippets/code/email-preview-test.ts.tpl +14 -0
- package/resources/snippets/code/email-render-pipeline.ts.tpl +12 -0
- package/resources/snippets/code/email-send-controller.ts.tpl +18 -0
- package/resources/snippets/code/email-transport-provider.ts.tpl +8 -0
- package/resources/snippets/code/enable-auth-session.config.ts.tpl +34 -0
- package/resources/snippets/code/enable-auth-session.controller.ts.tpl +30 -0
- package/resources/snippets/code/enable-file-upload.config.ts.tpl +6 -0
- package/resources/snippets/code/enable-file-upload.controller.ts.tpl +16 -0
- package/resources/snippets/code/enable-linting.package.json.tpl +13 -0
- package/resources/snippets/code/generate-config.app-config.ts.tpl +7 -0
- package/resources/snippets/code/generate-config.application.yml.tpl +3 -0
- package/resources/snippets/code/generate-config.local.yml.tpl +2 -0
- package/resources/snippets/code/generate-test-suite.fixture.json.tpl +4 -0
- package/resources/snippets/code/generate-test-suite.unit.ts.tpl +11 -0
- package/resources/snippets/code/model-indexed.indexes.ts.tpl +14 -0
- package/resources/snippets/code/model-indexed.model.ts.tpl +8 -0
- package/resources/snippets/code/model-indexed.service.ts.tpl +15 -0
- package/resources/snippets/code/model-query.service.ts.tpl +18 -0
- package/resources/snippets/code/openapi-client-generation.readme.tpl +13 -0
- package/resources/snippets/code/openapi-client-generation.yml.tpl +20 -0
- package/resources/snippets/code/openapi-spec-pipeline.yml.tpl +21 -0
- package/resources/snippets/code/pack-docker-release.yml.tpl +21 -0
- package/resources/snippets/code/project-bootstrap.application.yml.tpl +2 -0
- package/resources/snippets/code/project-bootstrap.home-controller.ts.tpl +15 -0
- package/resources/snippets/code/project-bootstrap.home-service.ts.tpl +8 -0
- package/resources/snippets/code/project-bootstrap.monorepo.package.json.tpl +12 -0
- package/resources/snippets/code/project-bootstrap.package.json.tpl +18 -0
- package/resources/snippets/code/repo-version-release.yml.tpl +25 -0
- package/resources/snippets/code/rest-rpc-client.client.ts.tpl +8 -0
- package/resources/snippets/code/rest-rpc-client.index.ts.tpl +1 -0
- package/resources/snippets/code/workflow-cloudfront-deploy.yml.tpl +18 -0
- package/resources/snippets/code/workflow-gcp-deploy.yml.tpl +18 -0
- package/resources/snippets/core-aws-lambda-package-and-deploy.md +21 -0
- package/resources/snippets/core-email-compiler-pattern.md +21 -0
- package/resources/snippets/core-email-module-contract.md +21 -0
- package/resources/snippets/core-email-nodemailer-provider.md +21 -0
- package/resources/snippets/core-eslint-ruleset.md +21 -0
- package/resources/snippets/core-openapi-client-generation.md +21 -0
- package/resources/snippets/core-openapi-spec-pipeline.md +21 -0
- package/resources/snippets/core-pack-docker-release.md +21 -0
- package/resources/snippets/core-repo-version-release.md +21 -0
- package/resources/snippets/core-upload-pattern.md +21 -0
- package/resources/snippets/core-web-controller-pattern.md +23 -0
- package/resources/snippets/core-work-pool-pattern.md +23 -0
- package/resources/snippets/embracinglife-cloudfront-deploy.md +21 -0
- package/resources/snippets/embracinglife-gcp-deploy.md +21 -0
- package/resources/snippets/recipe-auth-google-oauth.md +21 -0
- package/resources/snippets/recipe-indexed-model-pattern.md +21 -0
- package/resources/snippets/recipe-upload-presigned.md +21 -0
- package/resources/snippets/todo-app-test-pattern.md +21 -0
- package/src/consumer-docs.ts +23 -0
- package/src/execute.ts +624 -0
- package/src/install-guidance.ts +187 -0
- package/src/mcp.ts +170 -0
- package/src/plan.ts +110 -0
- package/src/recommendation.ts +306 -0
- package/src/snippet-catalog.ts +80 -0
- package/src/snippet-shapes.ts +14 -0
- package/src/template-shapes.ts +13 -0
- package/src/tooling.ts +197 -0
- package/src/types.ts +215 -0
- package/src/workflow-guidance.ts +220 -0
- package/support/base-command.ts +57 -0
- package/support/cli.llm_support_execute.ts +80 -0
- package/support/cli.llm_support_mcp.ts +62 -0
- package/support/cli.llm_support_plan.ts +30 -0
- package/support/cli.llm_support_recommend.ts +34 -0
- package/support/cli.llm_support_status.ts +30 -0
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Inject, Injectable } from '@travetto/di';
|
|
2
|
+
import type { ModelQuerySupport, Query } from '@travetto/model-query';
|
|
3
|
+
|
|
4
|
+
import { {{modelName}} } from '../model/{{modelFile}}.ts';
|
|
5
|
+
|
|
6
|
+
@Injectable()
|
|
7
|
+
export class {{modelName}}QueryService {
|
|
8
|
+
@Inject()
|
|
9
|
+
source: ModelQuerySupport;
|
|
10
|
+
|
|
11
|
+
queryByQuestion(question: string): Promise<{{modelName}}[]> {
|
|
12
|
+
const lowered = question.toLowerCase();
|
|
13
|
+
const query: Query<{{modelName}}> = lowered.includes('recent') ?
|
|
14
|
+
{ where: {}, sort: { createdAt: -1 }, limit: 25 } :
|
|
15
|
+
{ where: {} };
|
|
16
|
+
return this.source.query({{modelName}}, query);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Generated API Client
|
|
2
|
+
|
|
3
|
+
This directory is generated from OpenAPI definitions.
|
|
4
|
+
|
|
5
|
+
## Regeneration
|
|
6
|
+
|
|
7
|
+
Run:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npx trv openapi:client --input openapi.yml --output src/client
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Commit generated changes when API contract updates are intentional.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
name: openapi-client
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch:
|
|
5
|
+
pull_request:
|
|
6
|
+
paths:
|
|
7
|
+
- openapi.yml
|
|
8
|
+
- openapi.generated.yml
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
generate-client:
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v4
|
|
15
|
+
- uses: actions/setup-node@v4
|
|
16
|
+
with:
|
|
17
|
+
node-version: 20
|
|
18
|
+
- run: npm ci
|
|
19
|
+
- run: npx trv openapi:client --input openapi.yml --output src/client
|
|
20
|
+
- run: git diff --exit-code
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
name: openapi-spec
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
pull_request:
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
generate:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- uses: actions/checkout@v4
|
|
13
|
+
- uses: actions/setup-node@v4
|
|
14
|
+
with:
|
|
15
|
+
node-version: 20
|
|
16
|
+
- run: npm ci
|
|
17
|
+
- run: npx trv openapi:spec --format yaml --output openapi.generated.yml
|
|
18
|
+
- uses: actions/upload-artifact@v4
|
|
19
|
+
with:
|
|
20
|
+
name: openapi-spec
|
|
21
|
+
path: openapi.generated.yml
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
name: docker-release
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
workflow_dispatch:
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
release:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
permissions:
|
|
12
|
+
contents: read
|
|
13
|
+
packages: write
|
|
14
|
+
steps:
|
|
15
|
+
- uses: actions/checkout@v4
|
|
16
|
+
- uses: actions/setup-node@v4
|
|
17
|
+
with:
|
|
18
|
+
node-version: 20
|
|
19
|
+
- run: npm ci
|
|
20
|
+
- run: npx trv pack:docker --tag "$GITHUB_SHA"
|
|
21
|
+
- run: echo "Publish container image to your registry"
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Inject } from '@travetto/di';
|
|
2
|
+
import { Controller, Get } from '@travetto/web';
|
|
3
|
+
|
|
4
|
+
import { HomeService } from '../service/home.ts';
|
|
5
|
+
|
|
6
|
+
@Controller('/home')
|
|
7
|
+
export class HomeController {
|
|
8
|
+
@Inject()
|
|
9
|
+
service: HomeService;
|
|
10
|
+
|
|
11
|
+
@Get('/')
|
|
12
|
+
getHome(): { status: string; message: string } {
|
|
13
|
+
return { status: 'ok', message: this.service.getMessage() };
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "{{projectName}}",
|
|
3
|
+
"private": true,
|
|
4
|
+
"type": "module",
|
|
5
|
+
"scripts": {
|
|
6
|
+
"test": "trv test",
|
|
7
|
+
"start": "trv web:http"
|
|
8
|
+
},
|
|
9
|
+
"dependencies": {
|
|
10
|
+
"@travetto/di": "^8.0.0-alpha.14",
|
|
11
|
+
"@travetto/web": "^8.0.0-alpha.16",
|
|
12
|
+
"@travetto/web-http": "^8.0.0-alpha.17"
|
|
13
|
+
},
|
|
14
|
+
"devDependencies": {
|
|
15
|
+
"@travetto/cli": "^8.0.0-alpha.20",
|
|
16
|
+
"@travetto/compiler": "^8.0.0-alpha.16"
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
name: repo-version-release
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch:
|
|
5
|
+
inputs:
|
|
6
|
+
mode:
|
|
7
|
+
description: Release mode
|
|
8
|
+
required: true
|
|
9
|
+
default: changed
|
|
10
|
+
level:
|
|
11
|
+
description: Semver level
|
|
12
|
+
required: true
|
|
13
|
+
default: patch
|
|
14
|
+
|
|
15
|
+
jobs:
|
|
16
|
+
version:
|
|
17
|
+
runs-on: ubuntu-latest
|
|
18
|
+
steps:
|
|
19
|
+
- uses: actions/checkout@v4
|
|
20
|
+
- uses: actions/setup-node@v4
|
|
21
|
+
with:
|
|
22
|
+
node-version: 20
|
|
23
|
+
- run: npm ci
|
|
24
|
+
- run: npx trv repo:version --mode "${{ inputs.mode }}" --level "${{ inputs.level }}"
|
|
25
|
+
- run: git status --short
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { {{clientName}} } from './{{clientFile}}.ts';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
name: Deploy UI (CloudFront)
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
workflow_dispatch:
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
deploy-ui:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- uses: actions/checkout@v4
|
|
13
|
+
- uses: actions/setup-node@v4
|
|
14
|
+
with:
|
|
15
|
+
node-version: 20
|
|
16
|
+
- run: npm ci
|
|
17
|
+
- run: npm run build
|
|
18
|
+
- run: echo "Sync to S3 and invalidate CloudFront here"
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
name: Deploy API (GCP)
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
workflow_dispatch:
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
deploy-api:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- uses: actions/checkout@v4
|
|
13
|
+
- uses: actions/setup-node@v4
|
|
14
|
+
with:
|
|
15
|
+
node-version: 20
|
|
16
|
+
- run: npm ci
|
|
17
|
+
- run: npm run build
|
|
18
|
+
- run: echo "Deploy API to GCP here"
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "core-aws-lambda-package-and-deploy",
|
|
4
|
+
"repositoryId": "travetto",
|
|
5
|
+
"filePath": "module/web-aws-lambda/src",
|
|
6
|
+
"capabilityTags": ["aws", "lambda", "packaging", "deploy"],
|
|
7
|
+
"operationIds": ["aws-lambda-package-and-deploy"],
|
|
8
|
+
"applicability": ["framework-native"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Package and deploy Lambda artifacts through CI with explicit environment controls."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# core-aws-lambda-package-and-deploy
|
|
16
|
+
|
|
17
|
+
- Source: `module/web-aws-lambda/src`
|
|
18
|
+
- Capability tags: aws, lambda, packaging, deploy
|
|
19
|
+
- Applicability: framework-native
|
|
20
|
+
- Notes:
|
|
21
|
+
- Package and deploy Lambda artifacts through CI with explicit environment controls.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "core-email-compiler-pattern",
|
|
4
|
+
"repositoryId": "travetto",
|
|
5
|
+
"filePath": "module/email-compiler/src/service.ts",
|
|
6
|
+
"capabilityTags": ["email", "compiler", "rendering"],
|
|
7
|
+
"operationIds": ["email-render-pipeline"],
|
|
8
|
+
"applicability": ["framework-native"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Reference compiler pipeline for transforming template sources into renderable outputs."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# core-email-compiler-pattern
|
|
16
|
+
|
|
17
|
+
- Source: `module/email-compiler/src/service.ts`
|
|
18
|
+
- Capability tags: email, compiler, rendering
|
|
19
|
+
- Applicability: framework-native
|
|
20
|
+
- Notes:
|
|
21
|
+
- Reference compiler pipeline for transforming template sources into renderable outputs.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "core-email-module-contract",
|
|
4
|
+
"repositoryId": "travetto",
|
|
5
|
+
"filePath": "module/email/src/types.ts",
|
|
6
|
+
"capabilityTags": ["email", "template", "contract"],
|
|
7
|
+
"operationIds": ["email-create-template", "email-context-schema"],
|
|
8
|
+
"applicability": ["framework-native"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Reference email payload and template contract conventions."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# core-email-module-contract
|
|
16
|
+
|
|
17
|
+
- Source: `module/email/src/types.ts`
|
|
18
|
+
- Capability tags: email, template, contract
|
|
19
|
+
- Applicability: framework-native
|
|
20
|
+
- Notes:
|
|
21
|
+
- Reference email payload and template contract conventions.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "core-email-nodemailer-provider",
|
|
4
|
+
"repositoryId": "travetto",
|
|
5
|
+
"filePath": "module/email-nodemailer/src/service.ts",
|
|
6
|
+
"capabilityTags": ["email", "provider", "transport", "nodemailer"],
|
|
7
|
+
"operationIds": ["email-transport-provider", "email-send-flow"],
|
|
8
|
+
"applicability": ["framework-native"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Reference runtime provider wiring and transport integration points."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# core-email-nodemailer-provider
|
|
16
|
+
|
|
17
|
+
- Source: `module/email-nodemailer/src/service.ts`
|
|
18
|
+
- Capability tags: email, provider, transport, nodemailer
|
|
19
|
+
- Applicability: framework-native
|
|
20
|
+
- Notes:
|
|
21
|
+
- Reference runtime provider wiring and transport integration points.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "core-eslint-ruleset",
|
|
4
|
+
"repositoryId": "travetto",
|
|
5
|
+
"filePath": "module/eslint/support/eslint.config.ts",
|
|
6
|
+
"capabilityTags": ["quality", "lint", "eslint", "fix"],
|
|
7
|
+
"operationIds": ["enable-linting"],
|
|
8
|
+
"applicability": ["framework-native"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Reference lint baseline setup and autofix-friendly rule composition."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# core-eslint-ruleset
|
|
16
|
+
|
|
17
|
+
- Source: `module/eslint/support/eslint.config.ts`
|
|
18
|
+
- Capability tags: quality, lint, eslint, fix
|
|
19
|
+
- Applicability: framework-native
|
|
20
|
+
- Notes:
|
|
21
|
+
- Reference lint baseline setup and autofix-friendly rule composition.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "core-openapi-client-generation",
|
|
4
|
+
"repositoryId": "travetto",
|
|
5
|
+
"filePath": "module/openapi/src",
|
|
6
|
+
"capabilityTags": ["openapi", "client", "generation"],
|
|
7
|
+
"operationIds": ["openapi-client-generation"],
|
|
8
|
+
"applicability": ["framework-native"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Regenerate and validate OpenAPI clients in CI when contracts change."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# core-openapi-client-generation
|
|
16
|
+
|
|
17
|
+
- Source: `module/openapi/src`
|
|
18
|
+
- Capability tags: openapi, client, generation
|
|
19
|
+
- Applicability: framework-native
|
|
20
|
+
- Notes:
|
|
21
|
+
- Regenerate and validate OpenAPI clients in CI when contracts change.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "core-openapi-spec-pipeline",
|
|
4
|
+
"repositoryId": "travetto",
|
|
5
|
+
"filePath": "openapi.yml",
|
|
6
|
+
"capabilityTags": ["openapi", "pipeline", "ci"],
|
|
7
|
+
"operationIds": ["openapi-spec-pipeline"],
|
|
8
|
+
"applicability": ["framework-native"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Generate OpenAPI specs in CI and publish them as artifacts for downstream consumption."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# core-openapi-spec-pipeline
|
|
16
|
+
|
|
17
|
+
- Source: `openapi.yml`
|
|
18
|
+
- Capability tags: openapi, pipeline, ci
|
|
19
|
+
- Applicability: framework-native
|
|
20
|
+
- Notes:
|
|
21
|
+
- Generate OpenAPI specs in CI and publish them as artifacts for downstream consumption.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "core-pack-docker-release",
|
|
4
|
+
"repositoryId": "travetto",
|
|
5
|
+
"filePath": "module/pack/src",
|
|
6
|
+
"capabilityTags": ["docker", "pack", "release", "ci"],
|
|
7
|
+
"operationIds": ["pack-docker-release"],
|
|
8
|
+
"applicability": ["framework-native"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Build and publish Docker images from Travetto pack:docker in CI workflows."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# core-pack-docker-release
|
|
16
|
+
|
|
17
|
+
- Source: `module/pack/src`
|
|
18
|
+
- Capability tags: docker, pack, release, ci
|
|
19
|
+
- Applicability: framework-native
|
|
20
|
+
- Notes:
|
|
21
|
+
- Build and publish Docker images from Travetto pack:docker in CI workflows.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "core-repo-version-release",
|
|
4
|
+
"repositoryId": "travetto",
|
|
5
|
+
"filePath": "module/repo/src",
|
|
6
|
+
"capabilityTags": ["repo", "version", "release", "monorepo"],
|
|
7
|
+
"operationIds": ["repo-version-release"],
|
|
8
|
+
"applicability": ["framework-native"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Automate monorepo version updates using repo:version with explicit release inputs."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# core-repo-version-release
|
|
16
|
+
|
|
17
|
+
- Source: `module/repo/src`
|
|
18
|
+
- Capability tags: repo, version, release, monorepo
|
|
19
|
+
- Applicability: framework-native
|
|
20
|
+
- Notes:
|
|
21
|
+
- Automate monorepo version updates using repo:version with explicit release inputs.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "core-upload-pattern",
|
|
4
|
+
"repositoryId": "travetto",
|
|
5
|
+
"filePath": "module/web-upload/doc/simple-controller.ts",
|
|
6
|
+
"capabilityTags": ["upload", "web", "controller"],
|
|
7
|
+
"operationIds": ["enable-file-upload"],
|
|
8
|
+
"applicability": ["framework-native"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Reference upload decorator and file input handling patterns."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# core-upload-pattern
|
|
16
|
+
|
|
17
|
+
- Source: `module/web-upload/doc/simple-controller.ts`
|
|
18
|
+
- Capability tags: upload, web, controller
|
|
19
|
+
- Applicability: framework-native
|
|
20
|
+
- Notes:
|
|
21
|
+
- Reference upload decorator and file input handling patterns.
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "core-web-controller-pattern",
|
|
4
|
+
"repositoryId": "travetto",
|
|
5
|
+
"filePath": "module/web/support/test/suite/controller.ts",
|
|
6
|
+
"capabilityTags": ["web", "controller", "route", "decorators"],
|
|
7
|
+
"operationIds": ["create-web-route"],
|
|
8
|
+
"applicability": ["framework-native"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Reference controller decorator and endpoint parameter binding patterns.",
|
|
11
|
+
"Use for generated route/controller/service starter output."
|
|
12
|
+
]
|
|
13
|
+
}
|
|
14
|
+
-->
|
|
15
|
+
|
|
16
|
+
# core-web-controller-pattern
|
|
17
|
+
|
|
18
|
+
- Source: `module/web/support/test/suite/controller.ts`
|
|
19
|
+
- Capability tags: web, controller, route, decorators
|
|
20
|
+
- Applicability: framework-native
|
|
21
|
+
- Notes:
|
|
22
|
+
- Reference controller decorator and endpoint parameter binding patterns.
|
|
23
|
+
- Use for generated route/controller/service starter output.
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "core-work-pool-pattern",
|
|
4
|
+
"repositoryId": "travetto",
|
|
5
|
+
"filePath": "module/worker/src/pool.ts",
|
|
6
|
+
"capabilityTags": ["worker", "async", "workpool"],
|
|
7
|
+
"operationIds": ["email-send-flow"],
|
|
8
|
+
"applicability": ["framework-native"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Use for async workload orchestration and progress-aware execution.",
|
|
11
|
+
"Reference when generating worker-backed send flows."
|
|
12
|
+
]
|
|
13
|
+
}
|
|
14
|
+
-->
|
|
15
|
+
|
|
16
|
+
# core-work-pool-pattern
|
|
17
|
+
|
|
18
|
+
- Source: `module/worker/src/pool.ts`
|
|
19
|
+
- Capability tags: worker, async, workpool
|
|
20
|
+
- Applicability: framework-native
|
|
21
|
+
- Notes:
|
|
22
|
+
- Use for async workload orchestration and progress-aware execution.
|
|
23
|
+
- Reference when generating worker-backed send flows.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "embracinglife-cloudfront-deploy",
|
|
4
|
+
"repositoryId": "v2-embracing-life",
|
|
5
|
+
"filePath": ".github/workflows/deploy-ui.yml",
|
|
6
|
+
"capabilityTags": ["workflow", "aws", "cloudfront", "s3"],
|
|
7
|
+
"operationIds": ["workflow-cloudfront-deploy"],
|
|
8
|
+
"applicability": ["sample-project"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Reference UI deployment sync and invalidation workflow pattern."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# embracinglife-cloudfront-deploy
|
|
16
|
+
|
|
17
|
+
- Source: `.github/workflows/deploy-ui.yml`
|
|
18
|
+
- Capability tags: workflow, aws, cloudfront, s3
|
|
19
|
+
- Applicability: sample-project
|
|
20
|
+
- Notes:
|
|
21
|
+
- Reference UI deployment sync and invalidation workflow pattern.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "embracinglife-gcp-deploy",
|
|
4
|
+
"repositoryId": "v2-embracing-life",
|
|
5
|
+
"filePath": ".github/workflows/deploy-api.yml",
|
|
6
|
+
"capabilityTags": ["workflow", "gcp", "deploy", "cloud-run"],
|
|
7
|
+
"operationIds": ["workflow-gcp-deploy"],
|
|
8
|
+
"applicability": ["sample-project"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Reference Cloud Run deployment workflow structure and artifact push strategy."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# embracinglife-gcp-deploy
|
|
16
|
+
|
|
17
|
+
- Source: `.github/workflows/deploy-api.yml`
|
|
18
|
+
- Capability tags: workflow, gcp, deploy, cloud-run
|
|
19
|
+
- Applicability: sample-project
|
|
20
|
+
- Notes:
|
|
21
|
+
- Reference Cloud Run deployment workflow structure and artifact push strategy.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "recipe-auth-google-oauth",
|
|
4
|
+
"repositoryId": "recipe-manager",
|
|
5
|
+
"filePath": "modules/api/src/web/auth.config.ts",
|
|
6
|
+
"capabilityTags": ["auth", "oauth", "passport", "google"],
|
|
7
|
+
"operationIds": ["enable-auth-session"],
|
|
8
|
+
"applicability": ["sample-project"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Reference Google OAuth strategy wiring and principal mapping."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# recipe-auth-google-oauth
|
|
16
|
+
|
|
17
|
+
- Source: `modules/api/src/web/auth.config.ts`
|
|
18
|
+
- Capability tags: auth, oauth, passport, google
|
|
19
|
+
- Applicability: sample-project
|
|
20
|
+
- Notes:
|
|
21
|
+
- Reference Google OAuth strategy wiring and principal mapping.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "recipe-indexed-model-pattern",
|
|
4
|
+
"repositoryId": "recipe-manager",
|
|
5
|
+
"filePath": "modules/api/src/model/recipe.ts",
|
|
6
|
+
"capabilityTags": ["model", "indexed", "query"],
|
|
7
|
+
"operationIds": ["model-indexed-assistant", "model-query-assistant"],
|
|
8
|
+
"applicability": ["sample-project"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Reference sorted/keyed/unique index usage and query-centric model design."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# recipe-indexed-model-pattern
|
|
16
|
+
|
|
17
|
+
- Source: `modules/api/src/model/recipe.ts`
|
|
18
|
+
- Capability tags: model, indexed, query
|
|
19
|
+
- Applicability: sample-project
|
|
20
|
+
- Notes:
|
|
21
|
+
- Reference sorted/keyed/unique index usage and query-centric model design.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "recipe-upload-presigned",
|
|
4
|
+
"repositoryId": "recipe-manager",
|
|
5
|
+
"filePath": "modules/api/src/web/image.ts",
|
|
6
|
+
"capabilityTags": ["upload", "presigned-url", "blob"],
|
|
7
|
+
"operationIds": ["enable-file-upload"],
|
|
8
|
+
"applicability": ["sample-project"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Reference presigned upload URL generation and validation patterns."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# recipe-upload-presigned
|
|
16
|
+
|
|
17
|
+
- Source: `modules/api/src/web/image.ts`
|
|
18
|
+
- Capability tags: upload, presigned-url, blob
|
|
19
|
+
- Applicability: sample-project
|
|
20
|
+
- Notes:
|
|
21
|
+
- Reference presigned upload URL generation and validation patterns.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- json
|
|
2
|
+
{
|
|
3
|
+
"sourceId": "todo-app-test-pattern",
|
|
4
|
+
"repositoryId": "travetto",
|
|
5
|
+
"filePath": "related/todo-app/test/service.ts",
|
|
6
|
+
"capabilityTags": ["test", "suite", "service"],
|
|
7
|
+
"operationIds": ["generate-test-suite"],
|
|
8
|
+
"applicability": ["sample-project"],
|
|
9
|
+
"notes": [
|
|
10
|
+
"Reference integration-focused suite layout with injected services."
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
# todo-app-test-pattern
|
|
16
|
+
|
|
17
|
+
- Source: `related/todo-app/test/service.ts`
|
|
18
|
+
- Capability tags: test, suite, service
|
|
19
|
+
- Applicability: sample-project
|
|
20
|
+
- Notes:
|
|
21
|
+
- Reference integration-focused suite layout with injected services.
|