-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.repo-context.json
More file actions
107 lines (107 loc) · 4.64 KB
/
.repo-context.json
File metadata and controls
107 lines (107 loc) · 4.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
{
"project_identity": {
"name": "simple_shell",
"type": "educational",
"scope": "systems",
"is_independent": true,
"version": "1.0.0",
"description": "A comprehensive UNIX command line interpreter implementation in C, featuring process management, built-in commands, path resolution, environment variable handling, and signal processing with full POSIX compliance",
"curriculum_stage": "intermediate",
"related_projects": ["printf", "monty", "binary_trees"]
},
"tech_stack": {
"primary_language": "c",
"languages": ["c", "bash"],
"frameworks_libraries": ["stdio.h", "stdlib.h", "unistd.h", "sys/wait.h", "sys/stat.h", "sys/types.h", "signal.h", "errno.h"],
"tools": ["gcc", "make", "valgrind", "gdb", "strace"],
"paradigms": ["systems_programming", "process_management", "unix_philosophy"],
"concepts": ["shell_implementation", "process_creation", "command_interpretation", "signal_handling", "environment_management"]
},
"skill_manifest": {
"technical_skills": [
"UNIX Shell Implementation and Command Interpretation",
"Process Management with Fork, Exec, and Wait System Calls",
"Signal Handling and Interrupt Processing",
"Environment Variable Management and Manipulation",
"Path Resolution and Command Discovery",
"Built-in Command Implementation (cd, env, exit, help)",
"Custom Memory Management and Resource Allocation",
"File System Operations and Permission Handling",
"Input/Output Redirection and Stream Management",
"Error Handling and Status Code Management",
"String Manipulation and Parsing Algorithms",
"Custom Library Function Implementation (getline)",
"Inter-Process Communication and Synchronization",
"POSIX Standard Compliance and System Programming"
],
"domain_skills": [
"Operating System Interface Programming",
"Command Line Interface Design and Implementation",
"UNIX System Programming and Architecture",
"Shell Scripting and Automation Environment",
"Process Control and Job Management",
"System Resource Management",
"Command Parsing and Interpretation",
"Terminal and TTY Handling"
],
"soft_skills": [
"Systems Architecture Design",
"Modular Programming and Code Organization",
"Debugging and System Analysis",
"Performance Optimization in Systems Programming",
"Cross-Platform Development Considerations",
"Technical Documentation and Code Commenting"
]
},
"educational_context": {
"institution": "ALX Software Engineering Program",
"program": "Full Stack Software Engineering",
"level": "intermediate",
"duration_weeks": 3,
"estimated_hours": 60,
"prerequisite_knowledge": [
"Advanced C Programming",
"Memory Management and Pointers",
"File I/O and System Calls",
"Process Management Concepts",
"UNIX/Linux System Fundamentals",
"Command Line Interface Usage"
],
"learning_objectives": [
"Master UNIX system programming and process management",
"Implement a fully functional command line interpreter",
"Understand and apply signal handling in system programming",
"Develop expertise in environment variable management",
"Create modular and maintainable systems-level code",
"Apply POSIX standards in practical system programming",
"Implement custom memory management and resource handling",
"Design and build interactive command-line applications"
],
"assessment_criteria": [
"Functional shell with all required built-in commands",
"Proper process management and resource cleanup",
"Effective signal handling and error management",
"Clean, modular code architecture and organization",
"Memory leak prevention and efficient resource usage",
"Compliance with POSIX standards and best practices"
]
},
"project_context": {
"complexity_level": "intermediate-advanced",
"estimated_completion_time": "2-3 weeks",
"key_challenges": [
"Implementing proper process management with fork/exec/wait",
"Handling signals and interrupts gracefully",
"Managing environment variables and shell state",
"Creating efficient string parsing and tokenization",
"Implementing custom getline function for input handling"
],
"success_metrics": [
"Shell executes commands correctly in interactive and non-interactive modes",
"All built-in commands function properly",
"Proper signal handling and graceful shutdown",
"No memory leaks or resource management issues",
"Code passes all test cases and behaves like standard shell"
]
}
}