pit-manager
Version:
Centralized prompt management system for Human Behavior AI agents
40 lines • 1.57 kB
TypeScript
/**
* Merge functionality for PIT TypeScript - handles merging branches with conflict resolution.
*/
import { StorageEngine } from '../storage/engine';
export interface MergeConflict {
filename: string;
baseHash?: string;
oursHash?: string;
theirsHash?: string;
baseContent?: string;
oursContent?: string;
theirsContent?: string;
}
export interface MergeResult {
mergedTreeHash?: string;
conflicts: MergeConflict[];
mergedFiles: Record<string, string>;
isFastForward: boolean;
hasConflicts: boolean;
}
export declare abstract class MergeStrategy {
protected storage: StorageEngine;
constructor(storage: StorageEngine);
abstract mergeTrees(baseTreeHash: string | undefined, oursTreeHash: string, theirsTreeHash: string): Promise<MergeResult>;
}
export declare class ThreeWayMerge extends MergeStrategy {
mergeTrees(baseTreeHash: string | undefined, oursTreeHash: string, theirsTreeHash: string): Promise<MergeResult>;
private loadTree;
private mergeFile;
private createConflict;
private loadPromptContent;
private tryPromptMerge;
}
export declare class RecursiveMerge extends ThreeWayMerge {
findMergeBase(commit1Hash: string, commit2Hash: string): Promise<string | undefined>;
private getAllAncestors;
}
export declare function mergeBranches(storage: StorageEngine, currentCommitHash: string, mergeCommitHash: string, strategy?: string): Promise<MergeResult>;
export declare function formatConflictMarkers(conflict: MergeConflict): string;
//# sourceMappingURL=merge.d.ts.map