docs: replace front door terminology

This commit is contained in:
Turtle
2026-07-22 15:13:12 +08:00
parent 6648ff984a
commit a7fc81d745
121 changed files with 211 additions and 211 deletions

View File

@@ -50,7 +50,7 @@ class AppOption extends FeatureOption {
this.label = label
}
/** Identify options by their unique front door, not the shared interaction service. */
/** Identify external options by their run interface, not the shared interaction service. */
override markerConfigEntries(): readonly { id: string; name: string }[] {
switch (this.id) {
case 'acp': return [{ id: 'acp', name: '@deepseek-ai/dsh-acp' }]
@@ -58,7 +58,7 @@ class AppOption extends FeatureOption {
}
}
/** Embed is identified by the configured loop with no external front door. */
/** Embed is identified by the configured loop and absence of an external entry point. */
override matchesConfigEntries(entries: readonly { id: string; name: string }[], profile: ProjectProfile): boolean {
if (this.id !== 'embed') return super.matchesConfigEntries(entries, profile)
return entries.some(entry => entry.id === 'agent-loop' && entry.name === '@deepseek-ai/dsh-agent-loop')
@@ -93,7 +93,7 @@ export class AppFeature extends ExclusiveOptionFeature {
new AppOption('embed', 'Embedded context'),
]
/** Default to the profile's already selected front door. */
/** Default to the profile's already selected run interface. */
override defaultOptions(profile: ProjectProfile): readonly string[] {
return [profile.runInterface]
}

View File

@@ -112,7 +112,7 @@ export abstract class Feature {
readonly requires: readonly FeatureId[] = []
/** Features recommended during creation. */
readonly suggests: readonly FeatureId[] = []
/** Front doors under which this feature is meaningful. */
/** Run interfaces under which this feature is meaningful. */
readonly supportedInterfaces: readonly RunInterface[] = ['acp', 'embed']
/**
@@ -141,7 +141,7 @@ export abstract class Feature {
}
/**
* Whether the feature may be selected for this project front door.
* Whether the feature may be selected for this project run interface.
* @param profile - project context to check.
* @returns whether the feature applies.
*/

View File

@@ -8,7 +8,7 @@ import type { PackageManager } from '../package-managers/package-manager.ts'
import type { LocalPluginBlueprint } from '../plugins/local-plugin-blueprint.ts'
import type { FeatureId } from '../ids.ts'
/** Runtime front door selected for a generated project. */
/** Run interface selected for a generated project. */
export type RunInterface = 'acp' | 'embed'
/** Values shared by the required provider and app features. */

View File

@@ -209,7 +209,7 @@ describe('SdkProject and ProjectEditSession', () => {
expect(project.packageManifest().dependencies).not.toHaveProperty('@deepseek-ai/dsh-tasks')
})
it('round-trips embed app projects without a front-door Cordis config entry', async () => {
it('round-trips embed app projects without an ACP Cordis config entry', async () => {
const root = await mkdtemp(join(tmpdir(), 'dsh-embed-app-'))
temporary.push(root)
const creation = request([], [], 'embed')