Không gian lập trình với AI
Sai lệch tệp khóa phụ thuộc
So sánh đặc tả phụ thuộc trực tiếp trong tệp khai báo với mục gốc của tệp khóa.
● ● ●Lockstep Desk●
Quy trình · Sai lệch tệp khóa phụ thuộc ×
const root = lockfile.packages?.[""];
if (!root) return showDrift(["lockfile.root.missing"]);
const drift = [];
for (const group of ["dependencies", "devDependencies", "optionalDependencies"]) {
const wanted = manifest[group] ?? {};
const pinned = root[group] ?? {};
for (const name of new Set([...Object.keys(wanted), ...Object.keys(pinned)])) {
if (wanted[name] !== pinned[name]) drift.push(group + ":" + name);
}
}
return drift.length ? showDrift(drift) : reportAgreement();✳Sai lệch tệp khóa phụ thuộc
✓ Thay đổiKiểm tra trước khi áp dụng ↗
Minh họa không gian làm việc
- Dự án
- Báo mục thiếu hoặc thay đổi mà không ghi lại tệp hay cài gói.
- Kiểm tra trước khi áp dụng
- So sánh hành vi thực tế với kết quả mong đợi. Nếu kiểm tra thất bại, tìm nguyên nhân trước khi sửa tiếp.
- Mô hình
- Cấu hình endpoint tương thích OpenAI hoặc Anthropic bằng URL cơ sở và khóa API nếu cần. Kiểm tra kết nối. Máy chủ mô hình cục bộ phải đang chạy; công cụ từ xa có thể truyền dữ liệu riêng.
Quy trình
const root = lockfile.packages?.[""];
if (!root) return showDrift(["lockfile.root.missing"]);
const drift = [];
for (const group of ["dependencies", "devDependencies", "optionalDependencies"]) {
const wanted = manifest[group] ?? {};
const pinned = root[group] ?? {};
for (const name of new Set([...Object.keys(wanted), ...Object.keys(pinned)])) {
if (wanted[name] !== pinned[name]) drift.push(group + ":" + name);
}
}
return drift.length ? showDrift(drift) : reportAgreement();