@hasna/instructions 0.3.0 → 0.4.0
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 +43 -12
- package/dashboard/README.md +73 -0
- package/dist/cli/index.js +1321 -1101
- package/dist/data/config-store.d.ts +134 -0
- package/dist/data/config-store.d.ts.map +1 -0
- package/dist/data/config-store.test.d.ts +2 -0
- package/dist/data/config-store.test.d.ts.map +1 -0
- package/dist/db/database.d.ts +15 -0
- package/dist/db/database.d.ts.map +1 -1
- package/dist/generated/storage-kit/index.d.ts +1 -1
- package/dist/index.d.ts +6 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +896 -492
- package/dist/lib/apply.d.ts +2 -2
- package/dist/lib/apply.d.ts.map +1 -1
- package/dist/lib/export.d.ts +2 -2
- package/dist/lib/export.d.ts.map +1 -1
- package/dist/lib/import.d.ts +2 -2
- package/dist/lib/import.d.ts.map +1 -1
- package/dist/lib/package-manager-guard.d.ts +24 -0
- package/dist/lib/package-manager-guard.d.ts.map +1 -0
- package/dist/lib/package-manager-guard.test.d.ts +2 -0
- package/dist/lib/package-manager-guard.test.d.ts.map +1 -0
- package/dist/lib/platform-profiles.d.ts +2 -2
- package/dist/lib/platform-profiles.d.ts.map +1 -1
- package/dist/lib/project-dashboard-standard.d.ts +2 -2
- package/dist/lib/project-dashboard-standard.d.ts.map +1 -1
- package/dist/lib/redact.d.ts.map +1 -1
- package/dist/lib/sync-dir.d.ts +3 -3
- package/dist/lib/sync-dir.d.ts.map +1 -1
- package/dist/lib/sync.d.ts +6 -6
- package/dist/lib/sync.d.ts.map +1 -1
- package/dist/mcp/http.d.ts +0 -13
- package/dist/mcp/http.d.ts.map +1 -1
- package/dist/mcp/index.js +650 -575
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +1756 -17542
- package/dist/server/v1.d.ts.map +1 -1
- package/dist/status.d.ts +2 -2
- package/dist/status.d.ts.map +1 -1
- package/dist/storage/cloud-store.d.ts +21 -1
- package/dist/storage/cloud-store.d.ts.map +1 -1
- package/dist/storage/schema.d.ts.map +1 -1
- package/package.json +5 -8
- package/dist/cli/storage.d.ts +0 -3
- package/dist/cli/storage.d.ts.map +0 -1
- package/dist/cli/storage.test.d.ts +0 -2
- package/dist/cli/storage.test.d.ts.map +0 -1
- package/dist/db/remote-storage.d.ts +0 -13
- package/dist/db/remote-storage.d.ts.map +0 -1
- package/dist/db/storage-sync.d.ts +0 -53
- package/dist/db/storage-sync.d.ts.map +0 -1
- package/dist/db/storage-sync.test.d.ts +0 -2
- package/dist/db/storage-sync.test.d.ts.map +0 -1
- package/dist/server/server.test.d.ts +0 -2
- package/dist/server/server.test.d.ts.map +0 -1
- package/dist/storage.d.ts +0 -5
- package/dist/storage.d.ts.map +0 -1
- package/dist/storage.js +0 -537
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
import { type FeedbackInput } from "../db/database.js";
|
|
3
|
+
import type { Config, ConfigFilter, ConfigSnapshot, CreateConfigInput, CreateProfileInput, Machine, MachineContext, Profile, UpdateConfigInput, UpdateProfileInput } from "../types/index.js";
|
|
4
|
+
export interface CloudConfig {
|
|
5
|
+
apiUrl: string;
|
|
6
|
+
apiKey: string;
|
|
7
|
+
timeoutMs?: number;
|
|
8
|
+
}
|
|
9
|
+
export declare class CloudHttpError extends Error {
|
|
10
|
+
readonly status: number;
|
|
11
|
+
readonly body?: unknown | undefined;
|
|
12
|
+
constructor(status: number, message: string, body?: unknown | undefined);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Resolve cloud config from the environment.
|
|
16
|
+
* - both vars set -> config (api transport: self_hosted / cloud)
|
|
17
|
+
* - neither set -> null (local SQLite)
|
|
18
|
+
* - exactly one set -> throws (no silent local drift)
|
|
19
|
+
*/
|
|
20
|
+
export declare function resolveCloudConfig(env?: NodeJS.ProcessEnv): CloudConfig | null;
|
|
21
|
+
/** True when api (self_hosted/cloud) mode is active. */
|
|
22
|
+
export declare function isCloudMode(env?: NodeJS.ProcessEnv): boolean;
|
|
23
|
+
/**
|
|
24
|
+
* The single Store contract. Two transports implement it: LocalConfigStore
|
|
25
|
+
* (on-box SQLite) and CloudConfigStore (HTTP /v1 + bearer key).
|
|
26
|
+
*/
|
|
27
|
+
export interface ConfigStore {
|
|
28
|
+
readonly mode: "local" | "api";
|
|
29
|
+
listConfigs(filter?: ConfigFilter): Promise<Config[]>;
|
|
30
|
+
getConfig(idOrSlug: string): Promise<Config>;
|
|
31
|
+
getConfigById(id: string): Promise<Config>;
|
|
32
|
+
createConfig(input: CreateConfigInput): Promise<Config>;
|
|
33
|
+
updateConfig(idOrSlug: string, input: UpdateConfigInput): Promise<Config>;
|
|
34
|
+
deleteConfig(idOrSlug: string): Promise<void>;
|
|
35
|
+
getConfigStats(): Promise<Record<string, number>>;
|
|
36
|
+
listSnapshots(configId: string): Promise<ConfigSnapshot[]>;
|
|
37
|
+
getSnapshot(id: string): Promise<ConfigSnapshot | null>;
|
|
38
|
+
getSnapshotByVersion(configId: string, version: number): Promise<ConfigSnapshot | null>;
|
|
39
|
+
createSnapshot(configId: string, content: string, version: number): Promise<ConfigSnapshot>;
|
|
40
|
+
pruneSnapshots(configId: string, keep?: number): Promise<number>;
|
|
41
|
+
listProfiles(): Promise<Profile[]>;
|
|
42
|
+
getProfile(idOrSlug: string): Promise<Profile>;
|
|
43
|
+
getProfileConfigs(idOrSlug: string): Promise<Config[]>;
|
|
44
|
+
createProfile(input: CreateProfileInput): Promise<Profile>;
|
|
45
|
+
updateProfile(idOrSlug: string, input: UpdateProfileInput): Promise<Profile>;
|
|
46
|
+
deleteProfile(idOrSlug: string): Promise<void>;
|
|
47
|
+
addConfigToProfile(profileIdOrSlug: string, configId: string): Promise<void>;
|
|
48
|
+
removeConfigFromProfile(profileIdOrSlug: string, configId: string): Promise<void>;
|
|
49
|
+
resolveProfileForMachine(machine?: MachineContext): Promise<Profile | null>;
|
|
50
|
+
registerMachine(hostname?: string, os?: string, arch?: string): Promise<Machine>;
|
|
51
|
+
updateMachineApplied(hostname?: string): Promise<void>;
|
|
52
|
+
listMachines(): Promise<Machine[]>;
|
|
53
|
+
sendFeedback(input: FeedbackInput): Promise<void>;
|
|
54
|
+
/**
|
|
55
|
+
* Destroy all data in this store (used by `init --force`). Local: wipes the
|
|
56
|
+
* on-disk SQLite database. Api: forbidden — you cannot wipe the shared cloud
|
|
57
|
+
* store from a client, so the CloudConfigStore throws.
|
|
58
|
+
*/
|
|
59
|
+
reset(): Promise<void>;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Local SQLite-backed store (wraps the synchronous db layer). Accepts an
|
|
63
|
+
* explicit `Database` handle for isolated use (tests); otherwise uses the
|
|
64
|
+
* process-wide singleton via the db layer's default.
|
|
65
|
+
*/
|
|
66
|
+
export declare class LocalConfigStore implements ConfigStore {
|
|
67
|
+
private readonly db?;
|
|
68
|
+
readonly mode: "local";
|
|
69
|
+
constructor(db?: Database | undefined);
|
|
70
|
+
listConfigs(filter?: ConfigFilter): Promise<Config[]>;
|
|
71
|
+
getConfig(idOrSlug: string): Promise<Config>;
|
|
72
|
+
getConfigById(id: string): Promise<Config>;
|
|
73
|
+
createConfig(input: CreateConfigInput): Promise<Config>;
|
|
74
|
+
updateConfig(idOrSlug: string, input: UpdateConfigInput): Promise<Config>;
|
|
75
|
+
deleteConfig(idOrSlug: string): Promise<void>;
|
|
76
|
+
getConfigStats(): Promise<Record<string, number>>;
|
|
77
|
+
listSnapshots(configId: string): Promise<ConfigSnapshot[]>;
|
|
78
|
+
getSnapshot(id: string): Promise<ConfigSnapshot | null>;
|
|
79
|
+
getSnapshotByVersion(configId: string, version: number): Promise<ConfigSnapshot | null>;
|
|
80
|
+
createSnapshot(configId: string, content: string, version: number): Promise<ConfigSnapshot>;
|
|
81
|
+
pruneSnapshots(configId: string, keep?: number): Promise<number>;
|
|
82
|
+
listProfiles(): Promise<Profile[]>;
|
|
83
|
+
getProfile(idOrSlug: string): Promise<Profile>;
|
|
84
|
+
getProfileConfigs(idOrSlug: string): Promise<Config[]>;
|
|
85
|
+
createProfile(input: CreateProfileInput): Promise<Profile>;
|
|
86
|
+
updateProfile(idOrSlug: string, input: UpdateProfileInput): Promise<Profile>;
|
|
87
|
+
deleteProfile(idOrSlug: string): Promise<void>;
|
|
88
|
+
addConfigToProfile(profileIdOrSlug: string, configId: string): Promise<void>;
|
|
89
|
+
removeConfigFromProfile(profileIdOrSlug: string, configId: string): Promise<void>;
|
|
90
|
+
resolveProfileForMachine(machine?: MachineContext): Promise<Profile | null>;
|
|
91
|
+
registerMachine(hostname?: string, os?: string, arch?: string): Promise<Machine>;
|
|
92
|
+
updateMachineApplied(hostname?: string): Promise<void>;
|
|
93
|
+
listMachines(): Promise<Machine[]>;
|
|
94
|
+
sendFeedback(input: FeedbackInput): Promise<void>;
|
|
95
|
+
reset(): Promise<void>;
|
|
96
|
+
}
|
|
97
|
+
/** Cloud store: routes every operation to the `/v1` HTTP API with a bearer key. */
|
|
98
|
+
export declare class CloudConfigStore implements ConfigStore {
|
|
99
|
+
readonly mode: "api";
|
|
100
|
+
private readonly base;
|
|
101
|
+
private readonly apiKey;
|
|
102
|
+
private readonly timeoutMs;
|
|
103
|
+
constructor(config: CloudConfig);
|
|
104
|
+
private request;
|
|
105
|
+
listConfigs(filter?: ConfigFilter): Promise<Config[]>;
|
|
106
|
+
getConfig(idOrSlug: string): Promise<Config>;
|
|
107
|
+
getConfigById(id: string): Promise<Config>;
|
|
108
|
+
createConfig(input: CreateConfigInput): Promise<Config>;
|
|
109
|
+
updateConfig(idOrSlug: string, input: UpdateConfigInput): Promise<Config>;
|
|
110
|
+
deleteConfig(idOrSlug: string): Promise<void>;
|
|
111
|
+
getConfigStats(): Promise<Record<string, number>>;
|
|
112
|
+
listSnapshots(configId: string): Promise<ConfigSnapshot[]>;
|
|
113
|
+
getSnapshot(id: string): Promise<ConfigSnapshot | null>;
|
|
114
|
+
getSnapshotByVersion(configId: string, version: number): Promise<ConfigSnapshot | null>;
|
|
115
|
+
createSnapshot(configId: string, content: string, version: number): Promise<ConfigSnapshot>;
|
|
116
|
+
pruneSnapshots(configId: string, keep?: number): Promise<number>;
|
|
117
|
+
listProfiles(): Promise<Profile[]>;
|
|
118
|
+
getProfile(idOrSlug: string): Promise<Profile>;
|
|
119
|
+
getProfileConfigs(idOrSlug: string): Promise<Config[]>;
|
|
120
|
+
createProfile(input: CreateProfileInput): Promise<Profile>;
|
|
121
|
+
updateProfile(idOrSlug: string, input: UpdateProfileInput): Promise<Profile>;
|
|
122
|
+
deleteProfile(idOrSlug: string): Promise<void>;
|
|
123
|
+
addConfigToProfile(profileIdOrSlug: string, configId: string): Promise<void>;
|
|
124
|
+
removeConfigFromProfile(profileIdOrSlug: string, configId: string): Promise<void>;
|
|
125
|
+
resolveProfileForMachine(machine?: MachineContext): Promise<Profile | null>;
|
|
126
|
+
registerMachine(hostname?: string, os?: string, arch?: string): Promise<Machine>;
|
|
127
|
+
updateMachineApplied(hostname?: string): Promise<void>;
|
|
128
|
+
listMachines(): Promise<Machine[]>;
|
|
129
|
+
sendFeedback(input: FeedbackInput): Promise<void>;
|
|
130
|
+
reset(): Promise<void>;
|
|
131
|
+
}
|
|
132
|
+
/** Resolve the active store: api transport when the env is set, else local. */
|
|
133
|
+
export declare function resolveConfigStore(env?: NodeJS.ProcessEnv): ConfigStore;
|
|
134
|
+
//# sourceMappingURL=config-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-store.d.ts","sourceRoot":"","sources":["../../src/data/config-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-store.test.d.ts","sourceRoot":"","sources":["../../src/data/config-store.test.ts"],"names":[],"mappings":""}
|
package/dist/db/database.d.ts
CHANGED
|
@@ -4,4 +4,19 @@ export declare function now(): string;
|
|
|
4
4
|
export declare function slugify(name: string): string;
|
|
5
5
|
export declare function getDatabase(path?: string): Database;
|
|
6
6
|
export declare function resetDatabase(): void;
|
|
7
|
+
/**
|
|
8
|
+
* Destroy the on-disk local database: close the handle and delete the db file
|
|
9
|
+
* plus its WAL/SHM sidecars. Used by `init --force`. Resolves the path from the
|
|
10
|
+
* db module (honoring HASNA_CONFIGS_DB_PATH / CONFIGS_DB_PATH); a no-op for the
|
|
11
|
+
* in-memory (`:memory:`) database. Local-only — the CloudConfigStore never calls
|
|
12
|
+
* this (destroying the shared cloud store from a client is forbidden).
|
|
13
|
+
*/
|
|
14
|
+
export declare function resetLocalDatabase(): void;
|
|
15
|
+
export interface FeedbackInput {
|
|
16
|
+
message: string;
|
|
17
|
+
email?: string | null;
|
|
18
|
+
category?: string | null;
|
|
19
|
+
version?: string | null;
|
|
20
|
+
}
|
|
21
|
+
export declare function insertFeedback(input: FeedbackInput, db?: Database): void;
|
|
7
22
|
//# sourceMappingURL=database.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/db/database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAmBtC,wBAAgB,IAAI,IAAI,MAAM,CAE7B;AAED,wBAAgB,GAAG,IAAI,MAAM,CAE5B;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK5C;AAyED,wBAAgB,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/db/database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAmBtC,wBAAgB,IAAI,IAAI,MAAM,CAE7B;AAED,wBAAgB,GAAG,IAAI,MAAM,CAE5B;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK5C;AAyED,wBAAgB,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,CAqBnD;AAED,wBAAgB,aAAa,IAAI,IAAI,CAKpC;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAOzC;AAkCD,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,IAAI,CAMxE"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
export * from "./types/index.js";
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
5
|
-
export {
|
|
6
|
-
export { getDatabase, resetDatabase, uuid, now, slugify } from "./db/database.js";
|
|
7
|
-
export { CONFIGS_STORAGE_ENV, CONFIGS_STORAGE_FALLBACK_ENV, CONFIGS_STORAGE_MODE_ENV, CONFIGS_STORAGE_MODE_FALLBACK_ENV, CONFIGS_STORAGE_TABLES, STORAGE_DATABASE_ENV, STORAGE_MODE_ENV, STORAGE_TABLES, getStorageDatabaseEnvName, getStorageDatabaseUrl, getStorageMode, getStoragePg, getStorageStatus, getStorageSyncMetaAll, getSyncMetaAll, resolveTables, runStorageMigrations, storagePull, storagePush, storageSync, } from "./db/storage-sync.js";
|
|
8
|
-
export type { StorageMode, StorageStatus, SyncMeta, SyncResult } from "./db/storage-sync.js";
|
|
9
|
-
export * from "./db/remote-storage.js";
|
|
2
|
+
export { CloudConfigStore, CloudHttpError, LocalConfigStore, isCloudMode, resolveCloudConfig, resolveConfigStore, } from "./data/config-store.js";
|
|
3
|
+
export type { CloudConfig, ConfigStore } from "./data/config-store.js";
|
|
4
|
+
export { currentHostname, currentOs, currentArch } from "./db/machines.js";
|
|
5
|
+
export { uuid, now, slugify } from "./db/database.js";
|
|
10
6
|
export { getConfigsStatus } from "./status.js";
|
|
11
7
|
export type { ConfigsStatusContract } from "./status.js";
|
|
12
8
|
export { PG_MIGRATIONS } from "./db/pg-migrations.js";
|
|
@@ -34,4 +30,6 @@ export { parseTemplateVars, extractTemplateVars, renderTemplate, isTemplate } fr
|
|
|
34
30
|
export type { TemplateVar } from "./lib/template.js";
|
|
35
31
|
export { redactContent, scanSecrets, hasSecrets } from "./lib/redact.js";
|
|
36
32
|
export type { RedactResult, RedactedVar, RedactFormat } from "./lib/redact.js";
|
|
33
|
+
export { scanPackageManagerSecrets } from "./lib/package-manager-guard.js";
|
|
34
|
+
export type { PackageManagerFinding, PackageManagerScanOptions, PackageManagerScanResult, PackageManagerSeverity, PackageManagerSurface, } from "./lib/package-manager-guard.js";
|
|
37
35
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|